通用Mapper

使用通用Mapper可以实现自动拼接sql语句,使用mapper接口不需要编写sql语句,对于单表操作来说,大大提高了开发效率

导入依赖

 <dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional><version>1.18.2</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.0.9</version></dependency><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>2.1.1</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId></dependency><dependency><groupId>tk.mybatis</groupId><artifactId>mapper-spring-boot-starter</artifactId><version>2.1.5</version></dependency></dependencies>

mapper相关的依赖只有 mapper-spring-boot-starter

使用mapper的前提 ,在主配置文件中配置完数据源的基本信息

编写pojo

@Data @AllArgsConstructor @NoArgsConstructor
@Table(name = "user")
public class user {@Id @KeySql(useGeneratedKeys = true)private Integer id;private String username;private String password;private String perms;
}
  • @Table:指定与数据库中的表进行映射
  • @Id:表示该属性是主键
  • @KeySql:表示插入后主键会回传

编写UserMapper(dao层):继承接口即可

import tk.mybatis.mapper.common.Mapper;
public interface UserMapper extends Mapper<user> {
}

编写UserService类 将UserMapper注入到该类

Service
public class UserService {@Autowiredprivate UserMapper userMapper;public List<user>findAll(){return userMapper.selectAll();}
}

这里userMapper,idea可能会报错,不用理它

编写控制层

@RestController
public class jdbcController {@Autowiredprivate UserService userService;@GetMapping("/hello")public List<user> hello(){List<user> all = userService.findAll();return all;}
}

主启动类

import tk.mybatis.spring.annotation.MapperScan;
@SpringBootApplication
@MapperScan("com.demo.mapper")
public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}}

一定要添加这个注解,不然之前的接口无法使用

在浏览器中,访问的结果:

mapper常用的函数库:(91条消息) mybatis的通用Mapper函数库以及Example条件函数总结记录_初心不改-CSDN博客

SpringBoot:通用Mapper相关推荐

  1. SSM-Mybatis通用Mapper

    Mybatis通用Mapper 介绍(重要) 如果使用过Mybaitis 的人都知道Mapper 他是一个接口 而这个接口内定义的方法 关联mapper.xml文件里的sql语句 使用Mybatis的 ...

  2. SpringBoot整合Mybatis,使用通用mapper和PageHelper进行分页

    乐哉码农 上节介绍了如何整合Security,这节就说下如何再Springboot下使用持久层框架mybatis和牛人封装的通用mapper与mybatis的整合,直接进入正题吧! 1.首先引入我们需 ...

  3. SpringBoot继承TkMapper通用Mapper

    MyBatis通用Mapper提供了基本的CRUD的api , 省略了写大量基础代码甚至高级代码的时间 , 方便快捷 , 提升工作效率 . 可以参考通用Mapper文档 SpringBoot集成通用M ...

  4. Springboot集成mybatis通用Mapper与分页插件PageHelper

    Springboot集成mybatis通用Mapper与分页插件PageHelper 插件介绍 通用 Mapper 是一个可以实现任意 MyBatis 通用方法的框架,项目提供了常规的增删改查操作以及 ...

  5. 通用mapper版+SpringBoot+MyBatis框架+mysql数据库的整合

    转:https://blog.csdn.net/qq_35153200/article/details/79538440 开发环境: 开发工具:Intellij IDEA 2017.2.3 JDK : ...

  6. 一看就会一学就废之SpringBoot整合通用Mapper以及常用方法

    本文适合初次学习通用Mapper新鸟阅览,老生常谈,从三个大方向入手----是什么?能干什么?怎么用? 目录 一.通用Mapper是什么? 二.通用Mapper能干什么? 三.怎么使用通用Mapper ...

  7. SpringBoot整合TkMybatis(通用mapper)

    TkMybatis目录 SpringBoot整合TkMybatis(通用mapper) SpringBoot整合TkMybatis(通用mapper)(自定义xml文件) 源码 GitHub: htt ...

  8. SpringBoot整合通用Mapper

    添加依赖 添加通用Mapper的依赖,注意还需要搭配MyBatis和对应数据库的驱动: <dependency><groupId>org.mybatis.spring.boot ...

  9. Springboot快速整合通用Mapper

    前言 后端业务开发,每个表都要用到单表的增删改查等通用方法,而配置了通用Mapper可以极大的方便使用Mybatis单表的增删改查操作. 通用mapper配置 1.添加maven: <depen ...

  10. Springboot+Mybatis+通用Mapper多数据源实现数据同步

    有个需求需要查询远程数据库,然后将远程数据库中的数据抓取到本地,远程数据库中的数据是每天都增加的,所以就需要写个程序自动实现实时抓取. 这里我用到的框架是Springboot2.0+Mybatis+M ...

最新文章

  1. win7硬盘安装ubuntu双系统——注意项
  2. WAT中Security选项卡无法连接到数据库解决办法
  3. 元素隐藏的三种方式对比(针对移动端项目中的按钮,先隐藏且不能被点击 visibility:hidden)
  4. sniffer 工具
  5. 微软更新服务器win7,[技巧]绕过微软限制:让基于新处理器的Win7/8.1系统继续接收更新...
  6. 从C#开始的面向对象编程经典自学教程
  7. c语言jt808协议库,平台如何应答——关于JT/T808协议
  8. 重学python入门知识
  9. python中side什么意思_python – 在PySide中区分信号源
  10. c++ 状态模式(state)
  11. 西瓜书+实战+吴恩达机器学习(七)监督学习之决策树 Decision Tree
  12. 易用性强的数据库管理工具DBeaverEE v22.0.1
  13. sketchup 计算机配置,草图大师2020对电脑配置要求
  14. 如何与亦敌亦友的 null 说拜拜?大神原来是这么做的!
  15. IPone 接口压力测试
  16. 【解决】maven install出现fatal error compiling
  17. oracle lpad nvl,Oracle的Lpad函数
  18. 1077: 空心菱形
  19. 一个站长找回域名的艰辛之路
  20. 【实例】用PHP制作一个简单的日历

热门文章

  1. 如何快速创建腾讯云MySQL数据库并远程连接?
  2. 业务监控网管解决方案
  3. 阅读JEECG源码,关于登录,密码加密
  4. python成三棋源代码
  5. 《松鼠》电化教学教案
  6. 谷歌浏览器怎么将迅雷设置为默认下载方式 谷歌浏览器设置迅雷为默认下载的教程
  7. 杭电和宁波大学计算机,浙江工业大学VS杭州电子科技大学,谁更好点?
  8. 星空深蓝色系新品项目发布会PPT模板
  9. macos 虚拟环绕声_虚拟和“真实”环绕声游戏耳机有什么区别?
  10. pgsql设置字段自增