MybatisPlus 中的API 使用總結(CRUD)

程式小邱兒發表於2020-11-05

前置環境

在springboot中配置的MybatisPlus,使用POJO 物件User,在Test環境中逐一進行MybatisPlus 增刪改查操作API的使用。

GO Ahead

首先在SpringbootTest模組自動引入Usermapper建立的物件

@SpringBootTest
class Springboot02MybatisApplicationTests {
    @Autowired
    private UserMapper userMapper;
    }

1.根據主鍵查詢----selectById()

@Test
    public void select01(){
        User user=userMapper.selectById(5);
        System.out.println(user);
    }

2.查詢總記錄數,或按條件查詢記錄數----selectCount()

@Test
    public void select02(){
    	//查詢記錄總數
        int count = userMapper.selectCount(null);
        System.out.println("總記錄數:"+count);
        //查詢age為4000的記錄數
        QueryWrapper<User> queryWrapper=new QueryWrapper<>();
        queryWrapper.eq("age", 4000);
        int count2=userMapper.selectCount(queryWrapper);
        System.out.println("age為4記錄數:"+count2);
    }

3.QueryWrapper的使用:
條件構造器, 用來拼接where條件:
例:查詢年齡大於18小於2000歲,且性別為女的user
sql: xxxx where age>18 and age <2000 and sex=“女”
邏輯運算子: = :eq, > :gt , < :lt , >= :ge , <= :le

QueryWrapper<User> queryWrapper = new QueryWrapper<>();
		queryWrapper.gt("age", 18)
					.lt("age", 2000)
					.or()
					.eq("sex", "女");
		List<User> userList = userMapper.selectList(queryWrapper);
		System.out.println(userList);

4.查詢id=1,3,5,7的user

@Test
	public void select03(){
		Integer[] ids = {1,3,5,7};	//模擬使用者引數
		List<Integer> idList = Arrays.asList(ids);
		List<User> userList = userMapper.selectBatchIds(idList);
		System.out.println(userList);
	}

5.獲取表中的第一列主鍵資訊----selectObjs

 @Test
    public void select05(){
        //如果需要獲取表中的第一列主鍵資訊
        List list = userMapper.selectObjs(null);
        System.out.println(list);
    }

6.插入資料-----insert

@Test
	public void testInsert(){
		User user = new User();
		user.setName("名媛")
			.setAge(80).setSex("女");
		userMapper.insert(user);
	}

7.更新資料-----update/updateById…update():引數1: 需要修改的資料 引數2:修改的where條件

1)將id=65的使用者名稱改成北京大爺
2)將name=名媛的user的name改成北京大爺

@Test
	public void testUpdate(){
		User user = new User();
		user.setId(65).setName("北京大爺");
		userMapper.updateById(user);
		
		User user = new User();
		user.setName("北京大爺");
		UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
		updateWrapper.eq("name", "名媛");
		userMapper.update(user,updateWrapper);
	}

8.刪除資料-----delete/deleteById/deleteBatchIds:
1)刪除id為65的user
2)刪除name為“名媛”的資料

@Test
	public void testDelete(){
		userMapper.deleteById(65);	//根據主鍵刪除
		//根據主鍵集合刪除
		//userMapper.deleteBatchIds("id集合資訊");
		//根據除主鍵之外的資料刪除資訊
		QueryWrapper queryWrapper = new QueryWrapper();
		queryWrapper.eq("name", "名媛");
		userMapper.delete(queryWrapper);
	}

相關文章