首頁 > 軟體

MybatisPlus QueryWrapper常用方法範例

2022-04-15 10:04:08

QueryWrapper常用方法

MybatisPlus 使用QueryWrapper測試用例

一、ge、gt、le、lt、isNull、isNotNull

@Test
public void testQuery() {
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    queryWrapper
            .isNull("name")
            .ge("age", 12)
            .isNotNull("email");
        int result = userMapper.delete(queryWrapper);
    System.out.println("delete return count = " + result);
}

二、eq、ne

@Test
public void testSelectOne() {
    QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    queryWrapper.eq("name", "Tom");
    Useruser = userMapper.selectOne(queryWrapper);//只能返回一條記錄,多餘一條則丟擲異常
    System.out.println(user);
}

三、between、notBetween

@Test
public void testSelectCount() {
    QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    queryWrapper.between("age", 20, 30);
        Integer count = userMapper.selectCount(queryWrapper); //返回資料數量
    System.out.println(count);
}

四、like、notLike、likeLeft、likeRight

@Test
public void testSelectMaps() {
    QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    queryWrapper
            .select("name", "age")
            .like("name", "e")
            .likeRight("email", "5");
    List<Map<String, Object>> maps = userMapper.selectMaps(queryWrapper);//返回值是Map列表
    maps.forEach(System.out::println);
}

五、orderBy、orderByDesc、orderByAsc

@Test
public void testSelectListOrderBy() {
    QueryWrapper<User> queryWrapper = new QueryWrapper<>();
    queryWrapper.orderByDesc("age", "id");
    List<User>users = userMapper.selectList(queryWrapper);
    users.forEach(System.out::println);
}

六、插入insert

@Test
public void save() {
    User user = new User();
    user.setAge(23);
    user.setEmail("344");
    user.setName("test");
    // 1.使用service新增
    userService.save(user);
    // 2.使用mapper 新增
    userMapper.insert(user);
}

七、刪除remove

@Test
public void delete() {
    // 根據條件刪除
    userService.remove(Wrappers.<User>query().lambda().eq(User::getAge, 3));
}

八、修改update

@Test
public void update() {
    User user = new User();
    user.setAge(23);
    user.setEmail("344");
    user.setName("test333");
    UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
    updateWrapper.eq("id","1");
    // 1.user 中封裝修改的屬性值, updateWrapper 中封裝修改的條件引數值
    userService.update(user,updateWrapper);

    // 2.根據條件修改對應的引數屬性值
    userService.update(Wrappers.<User>update().lambda().set(User::getName, "2").eq(User::getAge, 23));    
    // 3.判斷引數是否為空,並進行修改     String name = "name";     userService.update(Wrappers.<User>update().lambda().set(StringUtils.isNotBlank(name),User::getName, name).eq(User::getAge, 23));
}

總結

到此這篇關於MybatisPlus QueryWrapper常用方法的文章就介紹到這了,更多相關QueryWrapper常用方法內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com