SpringBoot-集成通用mapper

SpringBoot-集成通用mapper

​ 我们在SpringBoot中整合了MyBatis,但是大量重复的增删改查还是很头疼的问题,MyBatis也给出了解决方案:通用Mapper。

​ Mapper的作用:自动生成增删改查的SQL语句 大大减化对单表的操作,不过多表操作还是要我们实现的。

  1. 首先我们将SpringBoot中的MyBatis启动器删除,加入通用Mapper的启动器(此启动器中已经整合了MyBatis需要的相关依赖)。
<dependency>
<groupId>tk.mybatis</groupId>
<artifactId>mapper-spring-boot-starter</artifactId>
<version>2.1.5</version>
</dependency>
  1. 然后我们需要在Mapper接口中继承Mapper类,其泛型需要指定表对应的Bean对象。(注意导包)
package cn.rayfoo.mapper;

import cn.rayfoo.pojo.Hero;
import tk.mybatis.mapper.common.Mapper; public interface HeroMapper extends Mapper<Hero> {
}
3. 在Bean对象中加入@Table注解和Id注解,用于指定表名称以及主键如果主键是自增长需要用@KeySql指定,如果查询时要忽某个字段需要使用@Transient指定要忽略的字段。
package cn.ryafoo.core.bean;

import com.sun.javafx.beans.IDProperty;
import lombok.Data;
import tk.mybatis.mapper.annotation.KeySql; import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient; /**
* @author 张瑞丰
* @description
* @date 2019/11/14
*/
@Data
@Table(name = "person")
public class Person {
@Id
@KeySql(useGeneratedKeys = true)
private Integer id;
private String name;
@Transient
private Integer age;
}
4. 在启动类上修改MapperScan的包名为通用Mapper的包
package cn.ryafoo.core;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import tk.mybatis.spring.annotation.MapperScan; @MapperScan("cn.ryafoo.core.mapper")
@SpringBootApplication
public class CoreApplication { public static void main(String[] args) {
SpringApplication.run(CoreApplication.class, args);
} }

最新文章

  1. perl
  2. 推荐一个Jenkins 插件 Build Failure Analyzer
  3. PHP从零开始-笔记-面向对象编程的概念
  4. CentOS 安装 chrome 浏览器
  5. android button minheight问题
  6. hdu 5206 Four Inages Strategy
  7. httpd-2.2
  8. Using an Interface as a Type
  9. 原创的基于HTML/CSS/JavaScript的层级目录树
  10. html文件中文在浏览器中显示乱码问题解决
  11. 一个Sqrt谋杀触发功能
  12. Windows下一个ROracle安装与使用
  13. Android 开发笔记___基本适配器的使用__BaseAdapter
  14. 深入理解C++ new/delete, new []/delete[]动态内存管理
  15. Linux下编译安装php7.2
  16. 9_grep及正则表达式
  17. 高仿Readhub小程序 微信小程序项目【原】
  18. vue中eslintrc.js配置最详细介绍
  19. win10家庭版怎么开启Administrator超级管理员帐户
  20. 【转】WinRT 中SystemTrigger 构造函数的 SystemTriggerType 参数的解释

热门文章

  1. 5 HTML脚本&amp;字符实体&amp;URL
  2. 十 Spring的AOP的底层实现:JDK动态代理和Cglib动态代理
  3. SpringBoot 获得 properties 文件中数据方式
  4. HDU 5565:Clarke and baton
  5. android 简单列表对话框(AlertDialog.Builder().setItems())
  6. js中数值各进制之间的转换
  7. 设计模式课程 设计模式精讲 9-2 原型模式coding
  8. 【C++初学者自学笔记一】(把自己刚学到的东西做一下总结,如果有哪些地方不足请留言指正)
  9. 科软-信息安全实验3-Rootkit劫持系统调用
  10. 巧用DOS命令合并多个文本文件的内容