官网:https://baomidou.com

GitHub:GitHub - baomidou/mybatis-plus: An powerful enhanced toolkit of MyBatis for simplify development

Gitee:mybatis-plus: mybatis 增强工具包,简化 CRUD 操作。 文档 http://baomidou.com低代码组件库 http://aizuda.com

Mybatis-plus  在Spring中的使用

新建数据库

建表语句

CREATE TABLE `employee` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT,
  `name` varchar(255) DEFAULT NULL,
  `password` varchar(255) DEFAULT NULL,
  `email` varchar(255) DEFAULT NULL,
  `age` int(11) DEFAULT NULL,
  `admin` bit(1) DEFAULT NULL,
  `dept_id` bigint(20) DEFAULT NULL,
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;

插入数据

INSERT INTO `employee` VALUES (1, 'admin', '1', 'admin@abc.com', 40, b'1', 6);
INSERT INTO `employee` VALUES (2, '赵总', '1', 'zhaoz@langfeiyes.com', 35, b'0', 1);
INSERT INTO `employee` VALUES (3, '赵一明', '1', 'zhaoym@langfeiyes.com', 25, b'0', 1);
INSERT INTO `employee` VALUES (4, '钱总', '1', 'qianz@langfeiyes.com', 31, b'0', 2);
INSERT INTO `employee` VALUES (5, '钱二明', '1', 'qianem@langfeiyes.com', 25, b'0', 2);
INSERT INTO `employee` VALUES (6, '孙总', '1', 'sunz@langfeiyes.com', 35, b'0', 3);
INSERT INTO `employee` VALUES (7, '孙三明', '1', 'sunsm@langfeiyes.com', 25, b'0', 3);
INSERT INTO `employee` VALUES (8, '李总', '1', 'liz@langfeiyes.com', 35, b'0', 4);
INSERT INTO `employee` VALUES (9, '李四明', '1', 'lism@langfeiyes.com', 25, b'0', 4);
INSERT INTO `employee` VALUES (10, '周总', '1', 'zhouz@langfeiyes.com', 19, b'0', 5);
INSERT INTO `employee` VALUES (11, '周五明', '1', 'zhouwm@langfeiyes.com', 25, b'0', 5);
INSERT INTO `employee` VALUES (12, '吴总', '1', 'wuz@langfeiyes.com', 41, b'0', 5);
INSERT INTO `employee` VALUES (13, '吴六明', '1', 'wulm@langfeiyes.com', 33, b'0', 5);
INSERT INTO `employee` VALUES (14, '郑总', '1', 'zhengz@langfeiyes.com', 35, b'0', 3);
INSERT INTO `employee` VALUES (15, '郑七明', '1', 'zhengqm@langfeiyes.com', 25, b'0', 2);
INSERT INTO `employee` VALUES (16, '孙四明', '1', 'sunsim@langfeiyes.com', 25, b'0', 3);
INSERT INTO `employee` VALUES (17, '孙五明', '1', 'sunwm@langfeiyes.com', 25, b'0', 3);
INSERT INTO `employee` VALUES (18, '李五明', '1', 'liwm@langfeiyes.com', 25, b'0', 4);
INSERT INTO `employee` VALUES (19, '李六明', '1', 'lilm@langfeiyes.com', 25, b'0', 4);
INSERT INTO `employee` VALUES (20, '叶子', '1', 'yezi@langfeiyes.com', 0, b'0', 1);

创建项目

新建个Maven工程

配置下maven

引入依赖

<properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.source>8</maven.compiler.source><maven.compiler.target>8</maven.compiler.target></properties><dependencies><dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus</artifactId><version>3.4.3.4</version></dependency><!--数据连接池依赖--><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>1.2.8</version></dependency><!--mysql驱动依赖--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>8.0.22</version></dependency><!--自动生成getter/setter方法依赖--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.16</version><scope>provided</scope></dependency><!--单元测试--><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency><!--spring测试--><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>5.2.16.RELEASE</version></dependency><!--spring环境依赖包--><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.2.16.RELEASE</version></dependency><!--spring事务依赖包--><dependency><groupId>org.springframework</groupId><artifactId>spring-tx</artifactId><version>5.2.16.RELEASE</version></dependency><!--spring jdbc依赖包--><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>5.2.16.RELEASE</version></dependency><!--spring 日志依赖包--><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>1.7.25</version></dependency></dependencies>

在resources目录下配置数据db.properties、日志文件log4j.properties、spring容器文件spring-context-mybatis.xml

实体类

 

创建测试类,注意包路径

  @Testpublic void testSave(){Employee employee = new Employee();employee.setAdmin(1);employee.setAge(18);employee.setDeptId(1L);employee.setEmail("yezi@langfeiyes.com");employee.setName("yezi");employee.setPassword("111");employeeMapper.insert(employee);}@Testpublic void testUpdate(){Employee employee = new Employee();employee.setId(1L);employee.setAdmin(1);employee.setAge(18);employee.setDeptId(1L);employee.setEmail("yezi@langfeiyes.com");employee.setName("yezi");employee.setPassword("111");employeeMapper.updateById(employee);}@Testpublic void testDelete(){employeeMapper.deleteById(1L);}@Testpublic void testGet(){System.out.println(employeeMapper.selectById(1L));}@Testpublic void testList(){System.out.println(employeeMapper.selectList(null));}

Mybatis-plus   SpringBoot版本

新建个工程

引入devtools热部署  mysql驱动  mybatis框架 lombok  SpringBoot web容器  不然无法运行(如果单纯在测试类里测试  不引入Web也可以)

Spring Data JDBC 可以帮助检查数据源设置

将SpringBoot版本改成了2.7.2   不为什么

额外引入了德鲁伊和Mybatis-plus  去掉Mybatis框架   Mybatis-plus只做升级,本身还是Mybatis

顺便配置下maven,SpringBoot自带的maven很多莫名错误

代码还是上面Spring的代码

application.properties

其实驼峰配不配都一样

server.port=8088
spring.devtools.restart.enabled=true
#设置重启目录
spring.devtools.restart.additional-paths=src/main/java
#排除目录
spring.devtools.restart.exclude=static/**#mysql
spring.datasource.url=jdbc:mysql://localhost:3306/mybatis-plus?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8
spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver# 配置sql打印日志
mybatis-plus.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl#Mybatis-plus配置
#指定实体包名
mybatis-plus.type-aliases-package=com.example.mybatisplusspringboot.pojo
#指定.xml路径
mybatis-plus.mapper-locations=classpath:/mapper/*.xml
#开启驼峰命名
mybatis-plus.configuration.map-underscore-to-camel-case=true

Spring SpringBoot中使用Mybatis-plusDemo1相关推荐

  1. springboot中的mybatis是如果使用pagehelper的

    springboot中的mybatis是如果使用pagehelper的 springboot中使用其他组件都是基于自动配置的AutoConfiguration配置累的,pagehelper插件也是一样 ...

  2. springboot中整合mybatis及简单使用

    springboot中整合mybatis及简单使用 1.引入依赖 2.在applicaiton.yaml中配置数据源以及mybatis 3.创建sql测试表 4.编写mapper接口和mapper.x ...

  3. Spring Boot中使用MyBatis注解配置详解

    之前在Spring Boot中整合MyBatis时,采用了注解的配置方式,相信很多人还是比较喜欢这种优雅的方式的,也收到不少读者朋友的反馈和问题,主要集中于针对各种场景下注解如何使用,下面就对几种常见 ...

  4. mybatis手动切换数据库_在Spring项目中使用 Mybatis 如何实现动态切换数据源

    在Spring项目中使用 Mybatis 如何实现动态切换数据源 发布时间:2020-11-17 16:20:11 来源:亿速云 阅读:108 作者:Leah 这篇文章将为大家详细讲解有关在Sprin ...

  5. SpringBoot中关于Mybatis使用的三个问题

    SpringBoot中关于Mybatis使用的三个问题 转载请注明源地址:http://www.cnblogs.com/funnyzpc/p/8495453.html 原本是要讲讲PostgreSQL ...

  6. SpringBoot中使用mybatis/ibatis日志打印sql

    SpringBoot中使用mybatis/ibatis时日志打印sql 控制台打印mybatis/ibatis对应的sql 主机的日志文件中打印mybatis/ibatis对应的sql 控制台打印my ...

  7. Spring Boot 中使用 MyBatis 整合 Druid 多数据源

    本文将讲述 spring boot + mybatis + druid 多数据源配置方案. 环境 CentOs7.3 安装 MySQL 5.7.19 二进制版本 Github 代码 代码我已放到 Gi ...

  8. 在springboot中使用mybatis generate自动生成实体类和mapper

    1.在全局的pom中引入mybatis generate的依赖 <!--自动生成实体--><dependency><groupId>org.mybatis.gene ...

  9. 中value大小_如何在Spring/SpringBoot 中做参数校验?你需要了解的都在这里!

    数据的校验的重要性就不用说了,即使在前端对数据进行校验的情况下,我们还是要对传入后端的数据再进行一遍校验,避免用户绕过浏览器直接通过一些 HTTP 工具直接向后端请求一些违法数据. 本文结合自己在项目 ...

  10. Spring/Spring-Boot中@Component的作用

    今天在写程序的时候研究了一个以前没有太多想过的注解(@Component),在网上查找资料并经过实践,记录一下. 1.@controller 控制器(注入服务) 用于标注控制层,相当于struts中的 ...

最新文章

  1. C 文件读写 容易疏忽的一个问题
  2. 回顾2009,展望2010
  3. 云服务器 性能监控软件,云监控 - 云应用监控 - ManageEngine Applications Manager
  4. jdbc是java语言编写的类和接口_JDBC——Java语言连接数据库的标准
  5. 计算机应用技术基础-2答案,2017年计算机应用技术基础练习题及答案
  6. Vue项目开发中的点滴积累系列文章
  7. .net core 与ELK(4)后台运行els可视化工具和Kibana
  8. PMP第六版计算题公式整理
  9. pg数据库的基本操作
  10. C#实现在FastReport报表中添加电子图章
  11. 基恩士计算机软件,【基恩士】IV 系列 开始指南 PC软件篇 (简体中文).pdf
  12. 【云原生】SpringCloud系列之服务调用OpenFeign(基本概念和使用步骤)
  13. TrinityCore魔兽世界服务器-环境搭建(Debian11)
  14. 19HTML5期末大作业:动画漫影视网站设计——动画漫展学习资料电影模板(6页) HTML+CSS+JavaScript 学生DW网页设计作业成品 课程设计网页规划与设计 计算机毕设网页设计源
  15. java计算两个月份差_Java编程实现计算两个日期的月份差实例代码
  16. empress和queen区别_王后和皇后有什么区别?
  17. drf celery
  18. 为避免反射炫光计算机屏幕应怎样摆放,除了膜,电脑屏幕上还有种涂层,随便擦可就毁了!...
  19. mtd和mtdblock之间的关系
  20. MySQL数据文件被误删,如何进行恢复?

热门文章

  1. c语言的if指令表示,if(赋值语句)
  2. 网络流的各种加边优化
  3. MySQL Utilities
  4. 语音特征提取 matlab,基于matlab的语音信号特征提取方法研究
  5. inetd和xinetd的区别 (ZT)
  6. 视频解读:案例透视消费者洞察实践与收益
  7. HTTPS 前端劫持
  8. 短视频底层实操课,让你迅速从短视频新手变成高手
  9. 如何修改视频分辨率?
  10. reactor模式学习