说明:
1.我是看B站狂神的视频学习的,所以笔记与狂神讲的很相似
2.学习MyBatisPlus,看官方文档也很重要
查询(select)
表中数据如图:
1.测试类
(1)
@Test
void testSelect(){
//按id查询
User user = userMapper.selectById(5L);
System.out.println(user);
}
结果:
(2)
@Test
void testSelect(){
//按多个id查询
List<User> users = userMapper.selectBatchIds(Arrays.asList(5L, 6L, 7L, 8L));
users.forEach(System.out::println);
}
结果:
(3)
@Test
void testSelect(){
//map查询
HashMap<String, Object> map = new HashMap<>();
map.put("name","小蓝");
List<User> users1 = userMapper.selectByMap(map);
users1.forEach(System.out::println);
}
结果:
2.分页查询
分页查询方法:
1.原始方法:limit分页
2.pageHelper第三方插件
3.MP内置分页插件
使用MP内置分页插件
1.配置拦截器组件
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MYSQL));
return interceptor;
}
2.编写测试类
@Test
void testPageSelect(){
//测试分页查询
Page<User> page = new Page<>(2,2);
userMapper.selectPage(page, null);
List<User> records = page.getRecords();
records.forEach(System.out::println);
}
结果:
有的查询出来并未分页,显示的sql语句里没有limit,可能是因为导入的MP的依赖版本与配置的组件版本不符,建议去官网查看分页插件配置代码
狂神版旧版(3.0.5)配置: