MyBatis(九)------MyBatis的優缺點知多少


Mybatis的優缺點知多少


優點

​1. 易於上手和掌握

​2. sql寫在xml裏,便於統一管理和優化。

​3. 解除sql與程序代碼的耦合。

​4. 提供映射標籤,支持對象與數據庫的orm字段關係映射

​5. 提供對象關係映射標籤,支持對象關係組建維護

​6. 支持xml方式開發,提供xml接口映射文件,編寫動態sql

​7.支持註解方式開發,在持久層接口類引入註解


缺點

​1. sql工作量很大,尤其是字段多、關聯表多時,更是如此。

​2. sql依賴於數據庫,導致數據庫移植性差。

​3. 由於xml裏標籤id必須唯一,導致DAO中方法不支持方法重載。

​4. 字段映射標籤和對象關係映射標籤僅僅是對映射關係的描述,具體實現仍然依賴於sql。(比如配置了一對多Collection標籤,如果sql裏沒有join子表或查詢子表的話,查詢後返回的對象是不具備對象關係的,即Collection的對象爲null)

​5. DAO層過於簡單,對象組裝的工作量較大。

​6.  不支持級聯更新、級聯刪除。

​7. 編寫動態sql時,不方便調試,尤其邏輯複雜時。

​8 提供的寫動態sql的xml標籤功能簡單(連struts都比不上),編寫動態sql仍然受限,且可讀性低。

​9. 若不查詢主鍵字段,容易造成查詢出的對象有“覆蓋”現象。

​10. 參數的數據類型支持不完善。(如參數爲Date類型時,容易報沒有get、set方法,需在參數上加@param)

​​11. 多參數時,使用不方便,功能不夠強大。(目前支持的方法有map、對象、註解@param以及默認採用012索引位的方式)

​​​12. 緩存使用不當,容易產生髒數據。


願你就像早晨八九點鐘的太陽,活力十足,永遠年輕。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章