更新操作方法實(shí)戰(zhàn)
@Test
public void updateById(){
User user = new User();
user.setId(2L);
user.setAge(21);
user.setEmail("abc@qq.com");
int rows = userMapper.updateById(user);
System.out.println("影響記錄數(shù):"+rows);
}
@Test
public void updateByWrapper(){
//此條件出現(xiàn)在where后
UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("name","Jom").eq("age",28);
//此條件出現(xiàn)在set后
User user = new User();
user.setAge(29);
user.setEmail("abc@qq.com");
int rows = userMapper.update(user,updateWrapper);
System.out.println("影響記錄數(shù):"+rows);
}
// UPDATE user SET age=?, email=? WHERE age=? AND email=? AND (name = ? AND age = ?)
@Test
public void updateByWrapper2(){
//此條件設(shè)置后放到updateWrapper構(gòu)造函數(shù)后,會出現(xiàn)在where后面
User whereUser = new User();
whereUser.setEmail("abc2@qq.com");
//此條件出現(xiàn)在where后,會和上面的條件重復(fù)出現(xiàn)
UpdateWrapper<User> updateWrapper = new UpdateWrapper<>(whereUser);
updateWrapper.eq("name","Jom").eq("age",28);
//此條件出現(xiàn)在set后
User user = new User();
user.setAge(29);
user.setEmail("abc@qq.com");
int rows = userMapper.update(user,updateWrapper);
System.out.println("影響記錄數(shù):"+rows);
}
// UPDATE user SET age=? WHERE (name = ? AND age = ?)
@Test
public void updateByWrapper3(){
//此條件出現(xiàn)在where后,set字段少時(shí)可以直接加到后面
UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
updateWrapper.eq("name","Jom").eq("age",29).set("age",30);
int rows = userMapper.update(null,updateWrapper);
System.out.println("影響記錄數(shù):"+rows);
}
// UPDATE user SET age=? WHERE (name = ? AND age = ?)
@Test
public void updateByWrapperLambda(){
//此條件出現(xiàn)在where后,set字段少時(shí)可以直接加到后面
// UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
// updateWrapper.eq("name","Jom").eq("age",29).set("age",30);
//lambda寫法
LambdaUpdateWrapper<User> lambdaUpdateWrapper = Wrappers.<User>lambdaUpdate();
lambdaUpdateWrapper.eq(User::getName,"Jom").eq(User::getAge,30).set(User::getAge,31);
int rows = userMapper.update(null,lambdaUpdateWrapper);
System.out.println("影響記錄數(shù):"+rows);
}
// true
@Test
public void updateByWrapperLambdaChain(){
//lambda的鏈?zhǔn)綄懛? boolean update = new LambdaUpdateChainWrapper<User>(userMapper)
.eq(User::getName,"Jom").eq(User::getAge,31).set(User::getAge,32).update( );
System.out.println("更新是否成功:"+update);
}
刪除操作方法實(shí)戰(zhàn)
// DELETE FROM user WHERE id=?
@Test
public void deleteById(){
int rows = userMapper.deleteById(5L);
System.out.println("影響記錄數(shù):"+rows);
}
@Test
public void deleteByMap(){
Map<String,Object> map = new HashMap<>();
map.put("name","Sandy");
map.put("age",21);
int rows = userMapper.deleteByMap(map);
System.out.println("刪除記錄數(shù)為:"+rows);
}
// DELETE FROM user WHERE id IN ( ? , ? , ? )
@Test
public void deleteBatchIds(){
int rows = userMapper.deleteBatchIds(Arrays.asList(1320737652386902017L,1318216907102400513L,1318215819104182273L));
System.out.println("刪除記錄數(shù)為:"+rows);
}
// DELETE FROM user WHERE (id = ? OR age > ?)
@Test
public void deleteByWrapper(){
LambdaQueryWrapper<User> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(User::getId,3L).or().gt(User::getAge,40);
int rows = userMapper.delete(lambdaQueryWrapper);
System.out.println("刪除條數(shù)為:"+rows);
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。