Springboot将mybatis替换为mybatis-plus
2024-08-30 15:23:40
知识点:
1、Mybatis-plus相比mybatis,功能更加强大,简而言之,不需要我们去写mapper.xml配置,但是对于特殊需求的sql语句,还是需要写mapper.xml文件中的sql语句。
也增加了很多注解,让我们减少了开发的一些繁琐的操作。
mybatis-plus和和lombok一起使用,你会发现很完美
2、使用pageHelper插件进行分页查询
下面开始工程改造
1、注释以前的mybatis注解(我试了下不去注解,会报错),也可以不注释掉,注意看使用的mybatis-plus的包,我使用的是3.11版本必须注释,但是这个版本不需要
注释:mybatis-spring-boot-starter
2、添加mybatis-plus注解
添加:(可以查看官网的案例:https://mp.baomidou.com/guide/quick-start.html#%E5%88%9D%E5%A7%8B%E5%8C%96%E5%B7%A5%E7%A8%8B)
<!-- https://mvnrepository.com/artifact/com.baomidou/mybatis-plus-boot-starter -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>2.2.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.16.20</version>
<scope>provided</scope>
</dependency>
3、配置文件
1、配置不需要改动,保留mybatis的配置,但在application.yml文件中添加:
url: jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=true&serverTimezone=GMT%2B8
修改自己的库名。
2、将原有的mybatis改为mybatis-plus
mybatis-plus:
typeAliasesPackage: com.cn.commodity.entity
mapperLocations: classpath:mapper/*.xml
注意:本人电脑必须要加serverTimezone=GMT%2B8,否则报时区错误
4、mybatis-plus找表名
由于mybatis对mapper.xml中表名进行映射,可以找到数据库中的表名,
但是mybatis-plus使用内置的方法时,如(List<User> userList = userDao.selectList(null);),
需要在实体对象中加注解,如(@TableName(value = "user_t"))
这样,mybatis-plus就能找到数据库和实体对象的映射关系。
5、对Dao类继承BaseMapper
public interface UserDao extends BaseMapper<User> {}
这样就可以将mybatis改造为mybatis-plus工程,亲测有效
如果有问题,自己也可以查看官网:https://mp.baomidou.com/guide/quick-start.html#%E7%BC%96%E7%A0%81
还有很多注解,可以使用
@TableName(value = "user_t")
@TableId(value = "id",type = IdType.AUTO)
@TableField(value = "user_name")
#############上面配置mybatis-plus,下面配置pageHelper互不影响#################
6、添加pageHelper依赖
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.10</version>
</dependency>
7、使用pageHelper案例
@RequestMapping("/mybatisPlus")
@ResponseBody
public PageInfo<User> mybatisPlus(HttpServletRequest request){
PageHelper.startPage(1,10);
List<User> userList = userDao.selectList(null);
PageInfo<User> pageInfo = new PageInfo(userList);
System.out.println(userList);
return pageInfo;
}
注意事项:
本人在配置mybatis-plus和pageHelper的时候,发现很多错误,都是版本兼容问题。
最新文章
- iOS:核心动画的详解介绍:CAAnimation(抽象类)及其子类
- 常用的Eclilpse插件列表以及安装方式总结
- AQS详解
- Knockout js 绑定 radio 时,当绑定整形的时候,绑定不生效
- oracle数据库的一次异常起停处理。
- 命令行中的 vi 模式
- Docker最全教程——从理论到实战(二)
- Dart 中dynamic 的使用
- .NET第一章
- struts2简单入门-参数传递的三种方式
- sql中遍历字符串
- js 基本
- JS中var声明与function声明两种函数声明方式的区别
- jquery学习1之对juery对象的细节操作1
- laravel 和 thinkphp 条件查询的区别
- 利用 Create React Native App 快速创建 React Native 应用
- 【QQ输入法】QQ输入法输入的英文字母顺便空格很大
- file_get_contents无法请求https连接的解决方法 php开启curl
- Python基础-变量作用域
- 大整数乘法(Comba 乘法 (Comba&#160; Multiplication)原理)
热门文章
- Delphi 声明特性
- DA_03_linux网络配置及其远程连接
- bat wmic python 获取进程的所在路径
- golang struct的使用
- django-session的使用---文件session型
- 利用collections下的counter实现对列表重复元素的查重
- Codeforces Round #586 (Div. 1 + Div. 2) A. Cards
- log4j.properties通用配置
- hbuilder离线打包iOS,xcode开发卡在启动页注意点
- MFC 树形控件