第一篇:1、Mybatis-Plus 创建SpringBoot项目
第二篇:2、Mybatis-Plus 测试增、删、改、查
第三篇:3、Mybatis-Plus 自定义sql语句
第四篇:4、Mybatis-Plus 通用service的操作
第五篇:5、Mybatis-Plus 常用注解
第六篇:6、Mybatis-Plus wrapper的使用
第七篇:7、Mybatis-Plus condition的使用
文章目录
- 1、分页插件
-
- 1.1、添加配置类
- 1.2、测试
- 1.3、测试结果
- 2、XML自定义分页
-
- 2.1、UserMapper中定义接口方法
- 2.2、UserMapper.xml中编写SQL
- 2.3、测试
- 2.4、测试结果
- 2.5、数据库中表数据
1、分页插件
1.1、添加配置类
@Configuration
//扫描mapper接口所在的包,可以将主类中的注解移到此处
@MapperScan("com.zyz.mybatisplus.mapper")
public class MyBatisPlusConfig {
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor(){
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
return interceptor;
}
}
1.2、测试
@Test
public void testPage(){
Page<User> page = new Page<>(2,3);
userMapper.selectPage(page,null);
System.out.println(page.getRecords());
System.out.println(page.getPages());
System.out.println(page.getTotal());
System.out.println(page.hasNext());
System.out.println(page.hasPrevious());
}
1.3、测试结果
2、XML自定义分页
2.1、UserMapper中定义接口方法
/**
* 通过年龄查询用户信息并分页
* @param page mybatis-plus 所提供的分页对象,必须位于第一个参数的位置
* @param age
* @return
*/
Page<User> selectPageVo(@Param("page") Page<User> page,@Param("age") Integer age);
2.2、UserMapper.xml中编写SQL
<!-- 自定义分页 查询-->
<select id="selectPageVo" resultType="User">
select uid,user_name,age,email from t_user where age > #{age}
</select>
这里使用mybatis-plus中的起别名。需要在yml文件中进行配置
spring:
# 配置数据源信息
datasource:
# 配置数据源类型
type: com.zaxxer.hikari.HikariDataSource
# 配置连接数据库的各个信息
username: root
password: root
url: jdbc:mysql://localhost:3306/mybatis_plus?allowMultiQueries=true&characterEncoding=UTF-8&characterSetResults=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false
driver-class-name: com.mysql.cj.jdbc.Driver
server:
port: 8383
mybatis-plus:
configuration:
#配置Mybatis日志
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
#设置mybatis-plus的全局配置:
global-config:
db-config:
#设置实体类对应数据库中表的统一前缀
table-prefix: t_
#配置mybatis-plus的主键策略
id-type: auto
#配置类型别名所对应的包
type-aliases-package: com.zyz.mybatisplus.pojo
2.3、测试
@Test
public void testPageInDefine(){
Page<User> page = new Page<>(2,3);
userMapper.selectPageVo(page,22);
System.out.println(page.getRecords());
System.out.println(page.getPages());
System.out.println(page.getTotal());
System.out.println(page.hasNext());
System.out.println(page.hasPrevious());
}