MybatisPlus邏輯刪除、執行效能
阿新 • • 發佈:2021-07-12
一、邏輯刪除
1、新增欄位,預設值為0(或者使用this.setFieldValByName("deleted",0,metaObject);)
2、實體類,新增屬性
@TableLogic private Integer deleted;
3、Configuration配置類中新增,邏輯刪除外掛
//邏輯刪除外掛 @Bean public ISqlInjector sqlInjector() { return new LogicSqlInjector(); }
4、配置檔案
#預設值(可進行修改) #mybatis-plus.global-config.db-config.logic-delete-value=1 #mybatis-plus.global-config.db-config.logic-not-delete-value=0
5、測試類
//刪除操作 物理刪除 @Test public void testDeleteById(){ int result = userMapper.deleteById(1414586284076175361L); System.out.println(result); }
二、執行效能
1、配置檔案
#環境設定:dev、test、prod
spring.profiles.active=dev
2、Configuration配置類中新增,sql執行效能外掛
/** * SQL 執行效能分析外掛 * 開發環境使用,線上不推薦。 maxTime 指的是 sql 最大執行時長 * * 三種環境 * * dev:開發環境 * * test:測試環境 * * prod:生產環境 */ @Bean @Profile({"dev","test"})// 設定 dev test 環境開啟 public PerformanceInterceptor performanceInterceptor() { PerformanceInterceptor performanceInterceptor= new PerformanceInterceptor(); performanceInterceptor.setMaxTime(500);//ms,超過此處設定的ms則sql不執行 performanceInterceptor.setFormat(true); return performanceInterceptor; }