• Mybatis-Plus基础crud


    目录

    一、添加

    1、添加

    二、修改

    1、根据id修改

     2、根据条件修改

    三、删除

    1、根据id删除

    2、根据条件删除deleteByMap

     3、根据id批量删除

    4、根据条件删除delete

    四、查询

    1、根据id查询

    2、根据id批量查询

     3、查询一条数据

    4、查询数据条数

     5、根据条件查询数据总条数

    6、根据条件查询集合

    7、分页查询


    一、添加

    1、添加

    1. //添加
    2. @Test
    3. void insert() {
    4. User user = new User();
    5. user.setAge(20);
    6. user.setEmail("1@qq.com");
    7. user.setName("小黑子");
    8. user.setPassword("ctrl");
    9. user.setUserName("haha");
    10. // //返回的result是受影响的行数,并不是自增后的id
    11. int result = userMapper.insert(user);
    12. System.out.println(result);
    13. }

    二、修改

    1、根据id修改

    1. //根据id修改
    2. @Test
    3. void updateById() {
    4. User user = new User();
    5. user.setId(1L);
    6. user.setAge(22);
    7. user.setName("坤坤");
    8. int result = userMapper.updateById(user);
    9. System.out.println(result);
    10. }

     2、根据条件修改

    1. //根据条件修改
    2. @Test
    3. void update() {
    4. User user = new User();
    5. user.setAge(22);
    6. user.setName("坤坤");
    7. user.setPassword("1111");
    8. //添加条件
    9. QueryWrapper<User> wrapper = new QueryWrapper<>();
    10. //根究 字段user_name 值为zhangsan进行更新操作
    11. wrapper.eq("user_name","zhangsan");
    12. //根据条件更新
    13. int result = userMapper.update(user,wrapper);
    14. System.out.println(result);
    15. }

    三、删除

    1、根据id删除

    1. //根据id删除
    2. @Test
    3. void deleteById() {
    4. //根据id删除
    5. int result = userMapper.deleteById(2L);
    6. System.out.println(result);
    7. }

    2、根据条件删除deleteByMap

    1. //根据条件删除
    2. @Test
    3. public void testDeleteByMap() {
    4. Map<String, Object> columnMap = new HashMap<>();
    5. columnMap.put("age",20);
    6. columnMap.put("user_name","haha");
    7. //将columnMap中的元素设置为删除的条件,多个之间为and关系
    8. int result = this.userMapper.deleteByMap(columnMap);
    9. System.out.println("result = " + result);
    10. }

     3、根据id批量删除

    1. //根据id批量删除
    2. @Test
    3. public void deleteBatchIds() {
    4. //根据id批量删除
    5. int result = this.userMapper.deleteBatchIds(Arrays.asList(6L,7L));
    6. System.out.println("result = " + result);
    7. }

    4、根据条件删除delete

    1. //删除delete
    2. @Test
    3. public void delete() {
    4. //方式一
    5. QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    6. queryWrapper.eq("user_name","11")
    7. .eq("password","11");
    8. //方式二
    9. User user = new User();
    10. user.setUserName("11");
    11. user.setPassword("11");
    12. QueryWrapper<User> queryWrapper1 = new QueryWrapper<>(user);
    13. //根据id批量删除
    14. int result = this.userMapper.delete(queryWrapper1);
    15. System.out.println("result = " + result);
    16. }

    四、查询

    1、根据id查询

    1. //根据id查询
    2. @Test
    3. public void selectById() {
    4. //根据id查询
    5. User user = this.userMapper.selectById(1L);
    6. System.out.println("result = " + user);
    7. }

    2、根据id批量查询

    1. //根据id批量查询
    2. @Test
    3. public void selectBatchIds() {
    4. //根据id批量查询
    5. List<User> userList = this.userMapper.selectBatchIds(Arrays.asList(1L, 3L));
    6. System.out.println("result = " + userList);
    7. }

     3、查询一条数据

    1. //查询一条数据
    2. @Test
    3. public void selectOne() {
    4. QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    5. queryWrapper.eq("user_name","11");
    6. //查询一条,如果多余1条会报异常
    7. User user = this.userMapper.selectOne(queryWrapper);
    8. System.out.println("result = " + user);
    9. }

    4、查询数据条数

    1. //查询数据条数
    2. @Test
    3. public void selectCount1() {
    4. QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    5. //查询数据总条数
    6. Integer integer = this.userMapper.selectCount(queryWrapper);
    7. System.out.println("result = " + integer);
    8. }

     5、根据条件查询数据总条数

    1. //根据条件查询数据总条数
    2. @Test
    3. public void selectCount2() {
    4. QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    5. queryWrapper.gt("age",20);//查询年龄大于20的条数
    6. //根据条件查询数据总条数
    7. Integer integer = this.userMapper.selectCount(queryWrapper);
    8. System.out.println("result = " + integer);
    9. }

    6、根据条件查询集合

    1. //根据条件查询集合
    2. @Test
    3. public void selectList() {
    4. QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    5. queryWrapper.gt("age",20);//查询年龄大于20的条数
    6. //根据条件查询集合
    7. List<User> userList = this.userMapper.selectList(queryWrapper);
    8. userList.forEach(System.out::println);
    9. }

    7、分页查询

    创建分页插件

    1. @Configuration
    2. @MapperScan("com.mybatisplus.mapper")
    3. public class MybatisPlusConfig {
    4. @Bean
    5. public PaginationInterceptor paginationInterceptor(){
    6. return new PaginationInterceptor();
    7. }
    8. }

     查询

    1. //分页查询
    2. @Test
    3. public void selectPage() {
    4. //创建分页对象
    5. Page<User> page = new Page<>(2,2);
    6. QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    7. queryWrapper.like("email","itcast");//模糊查询
    8. IPage<User> iPage = this.userMapper.selectPage(page, queryWrapper);
    9. System.out.println("数据总条数:" + iPage.getTotal());
    10. System.out.println("数据总页数:" + iPage.getPages());
    11. System.out.println("当前页数:" + iPage.getCurrent());
    12. System.out.println("当前分页总页数:" + iPage.getSize());
    13. System.out.println("分页对象记录列表:" + iPage.getRecords());
    14. List<User> records = iPage.getRecords();
    15. //根据条件查询集合
    16. records.forEach(System.out::println);
    17. }

  • 相关阅读:
    wangEditor富文本编辑器使用
    Pytorch - 使用torchsummary/torchsummaryX/torchinfo库打印模型结构、输出维度和参数信息
    谷粒商城 高级篇 (九) --------- 缓存失效问题
    gitlab 项目上线,项目上线后回滚
    软件设计模式总结
    FFmpeg--音频解码流程:aac解码pcm
    为什么说C++太复杂(复杂到哪了?)
    VScode常用插件_AE必备插件
    一种基于自适应策略的混合鲸鱼优化算法-附代码
    前端面试题目(三十一)
  • 原文地址:https://blog.csdn.net/qi341500/article/details/132526487