1、局部設置mybatis
@TableLogic() private Integer deleted;
2、全局設置app
#邏輯刪除狀態設置 mybatis-plus.global-config.db-config.logic-not-delete-value = 0 mybatis-plus.global-config.db-config.logic-delete-value= = 1
3、測試測試
RunWith(SpringRunner.class) @SpringBootTest public class LogicTest { @Autowired private UserInfoMapper userInfoMapper; /** * 根據id刪除 */ @Test public void deleteById() { int rows = userInfoMapper.deleteById(123455); System.out.println("影響記錄數:"+rows); } /** * 獲取沒有刪除的數據 */ @Test public void select() { List<UserInfo> list = userInfoMapper.selectList(null); list.forEach(System.out::println); } /** * 修改沒有刪除的數據 */ @Test public void updateById() { UserInfo userInfo = new UserInfo(); userInfo.setAge(26); userInfo.setId(12323434); int rows = userInfoMapper.updateById(userInfo); } }
4、查詢不取字段code
@TableField(select = false) private Integer deleted;
5、自定義查詢get
@Select("select * from user ${ew.customSqlSegment}") List<UserInfo> mySelect(@Param(Constants.WRAPPER) Wrapper<UserInfo> wrapper);
/** *自定義查詢全部數據 */ @Test public void mySelect() { List<UserInfo> list = userInfoMapper.mySelect(Wrappers.<UserInfo> lambdaQuery().gt(UserInfo::getAge,25)); list.forEach(System.out::println); } /** * 自定義查詢沒有刪除的數據 */ @Test public void mySelect1() { List<UserInfo> list = userInfoMapper.mySelect(Wrappers.<UserInfo> lambdaQuery().gt(UserInfo::getAge,25).eq(UserInfo::getDeleted,0)); list.forEach(System.out::println); } 1