Mybatis_plus常用CRUD

Posted 冷雨落

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis_plus常用CRUD相关的知识,希望对你有一定的参考价值。

package com.lsj;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.lsj.mapper.UserMapper;
import com.lsj.pojo.User;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

import java.lang.reflect.Array;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;

@SpringBootTest
class MybatisPlusApplicationTests {
    //继承了BaseMapper,所有的方法都来自父类,我们也可以编写自己的扩展方法!
    @Autowired
    private UserMapper userMapper;

    @Test
    void contextLoads() {
        //参数是一个wrapper ,条件构造器,这里我们先不用 null
        List<User> userList = userMapper.selectList(null);//查询全部的用户
        userList.forEach(System.out::println);
    }
    @Test//测试插入
    public void insertTest(){
        User user = new User();
        user.setName("赖石金");
        user.setAge(18);
        user.setEmail("2803708553@qq.com");
        Integer result = userMapper.insert(user); //会帮我们自动生成id
        System.out.println(result); //受影响的行数
        System.out.println(user); //通过日志发现id会自动回填
    }
    @Test//测试更新
    public void updateTest(){
        User user = new User();
        long L =7;
        user.setId(L);//怎么改id??
        //通过条件自动拼接动态Sql
        user.setName("赖石金");
        user.setAge(12);
        user.setEmail("root@qq.com");
        int i = userMapper.updateById(user);//updateById,但是参数是个user
        System.out.println(i);
    }
        //批量查询
    @Test
    public void testSelectByBatchId(){
        List<User> users = userMapper.selectBatchIds(Arrays.asList(1, 2, 3));
        users.forEach(System.out::println);
    }
    @Test//测试分页查询
    public void testPage(){
        //参数一current:当前页   参数二size:页面大小
        //使用了分页插件之后,所有的分页操作都变得简单了
        Page<User> page = new Page<>(2,5);
        userMapper.selectPage(page,null);
        page.getRecords().forEach(System.out::println);
        System.out.println("总页数==>"+page.getTotal());
    }

    @Test
    public void testDeleteById(){
        userMapper.deleteById(7L);
    }
    //批量删除
    @Test
    public void testDeleteBatchIds(){
        userMapper.deleteBatchIds(Arrays.asList(1,2));
    }
    @Test
    public void testD(){
        HashMap<String, Object> map = new HashMap<>();
        map.put("age","18");
        map.put("name","lol");
        userMapper.deleteByMap(map);
    }


}

以上是关于Mybatis_plus常用CRUD的主要内容,如果未能解决你的问题,请参考以下文章

Mybatis_plus 自动生成代码时因为下划线造成的问题

Mybatis_Plus学习用法一

11SpringBoot-CRUD-thymeleaf公共页面元素抽取

csharp 用于SQL CRUD操作的常用C#代码段

MyBatis-Plus入门案例:查询数据库中所有记录

C#常用代码片段备忘