效能分析***,用於輸出每條 sql 語句及其執行時間。
雖然使用阿里的druid連線池可以完成這個目的,但是,我們一般認為,目前的元件能夠達到這個目的,盡量使用目前的元件,因為修改配置和引入第三方庫是需要消耗效能的。
很久使用我們沒有這種便利的開發工具來測試效能, 比如以mysql為例,我們就使用explain命令來測試效能。
輸出每條sql語句和執行時間的目的,在於,直**到那些是需要優化的,例如sql優化,通常除去查詢大量資料加索引的情況,一般都是去除不需要獲取的字段來達到sql優化的目的。
spring+springmvc+mybatis-plus(ssm框架)
只需在mybatis-config.xml配置如下內容即可(這裡有效的測試,目前針對於2.0以上和3.0以下,3.0以上沒測試過,暫不考慮,我想3.0應該也沒問題):
如果是springboot的話,增加如下內容即可:
/**
* sql執行效率外掛程式
*/@bean
@profile()// 設定 dev test 環境開啟
public performanceinterceptor performanceinterceptor()
注意事項:
引數:maxtime sql 執行最大時長,超過自動停止執行,有助於發現問題。
引數:format sql sql是否格式化,預設false。
建議開發環境使用,生產環境不要使用,還是那句話,生產環境加上這個會消耗一定的效能。所以一般開發環境開啟,生產環境禁用。 MP實戰系列 十五 之執行分析外掛程式
sql 執行分析 目前只支援 mysql 5.6.3 以上版本 作用是分析 處理 delete update 語句,防止小白或者惡意 delete update 全表操作!這裡我引用mybatis plus官方文件所說的。為什麼需要執行分析外掛程式?實際開發中,雖然我們可以根據資料庫許可權分給對應的...
MP實戰系列 十九 之批量新增
批量操作在實際開發中也應用非常多,例如批量下發優惠券 批量新增使用者等。以mybatis為例,通常實現批量操作,有這麼幾種方式?第一,單條插入sql語句,進行for迴圈遍歷,基準條件是根據前端傳過的陣列長度而定,如果傳了四個引數過來,也就是長度為4,代表遍歷4次 也就是執行四次插入 這種方式不太建議...
MP實戰系列 十二 之封裝方法詳解 續二
繼續mp實戰系列 十一 之封裝方法詳解 續一 這篇文章之後。此次要講的是關於查詢。查詢是用的比較多的,查詢很重要,好的查詢,加上索引如魚得水,不好的查詢加再多索引也是無濟於事。1.selectbyid 方法 演示示例 userentity user ud.selectbyid 33 system.o...