当前位置: 首页 > news >正文

Spring SpringBoot中使用Mybatis-plusDemo1

官网: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

http://www.lryc.cn/news/36491.html

相关文章:

  • 【18.04Ubuntu中解决无法识别显示屏】
  • Python 协程详解,都在这里了
  • 百家号如何写文章赚钱,百家号写文章真的赚钱?
  • 【HDFS】datanodeReport RPC优化
  • 【数据结构】研究链表带环问题
  • 数据仓库的设计思想
  • 【JavaSE】数组的定义与使用详解
  • Kubernetes14:Helm为了部署像微服务这种的大型项目
  • 2.3操作系统-存储管理:页式存储、逻辑地址、物理地址、物理地址逻辑地址之间的地址关系、页面大小与页内地址长度的关系、缺页中断、内存淘汰规则
  • 设计模式3——结构型模式
  • css——图片缩放,拉伸,变形的解决办法
  • 【工具使用】STM32CubeMX-基础使用篇
  • 面试题解-理解cookie、session和token
  • Buuctf [GUET-CTF2019]number_game 题解
  • OsgEarth配置.earth文件支持wms服务
  • 【数据结构】详解空间复杂度
  • 腾讯云GPU游戏服务器/云主机租用配置价格表
  • 配置临时SSL子域名泛化证书
  • 【Linux:环境变量的理解】
  • python数据类型与数据结构
  • 大数据自学学习技巧?
  • Qt音视频开发22-音频播放QAudioOutput
  • JavaEE简单示例——Spring的入门程序
  • 【嵌入式Bluetooth应用开发笔记】第一篇:DBUS概述与蓝牙开发小试牛刀
  • 如何在电脑更换新硬盘后迁移window11系统?2种迁移方法分享!
  • 6、Elasticsearch优化
  • 给力|这是一个专业的开源快速开发框架!
  • CIMCAI smart shipping company product container damage identify
  • ego微商小程序项目-接口测试
  • excel文件已经损坏怎么办