mybatis与mysql的优点_MyBatis的优缺点以及特点
特點:
mybatis是一種持久層框架,也屬于ORM映射。前身是ibatis。
相比于hibernatehibernate為全自動化,配置文件書寫之后不需要書寫sql語句,但是欠缺靈活,很多時候需要優化;
mybatis為半自動化,需要自己書寫sql語句,需要自己定義映射。增加了程序員的一些操作,但是帶來了設計上的靈活,并且也是支持hibernate的一些特性,如延遲加載,緩存和映射等;對數據庫的兼容性比hibernate差。移植性不好,但是可編寫靈活和高性能的sql語句。
簡單易學:本身就很小且簡單。沒有任何第三方依賴,最簡單安裝只要兩個jar文件+配置幾個sql映射文件易于學習,易于使用,通過文檔和源代碼,可以比較完全的掌握它的設計思路和實現。
靈活:mybatis不會對應用程序或者數據庫的現有設計強加任何影響。 sql寫在xml里,便于統一管理和優化。通過sql基本上可以實現我們不使用數據訪問框架可以實現的所有功能,或許更多。
解除sql與程序代碼的耦合:通過提供DAO層,將業務邏輯和數據訪問邏輯分離,使系統的設計更清晰,更易維護,更易單元測試。sql和代碼的分離,提高了可維護性。
提供映射標簽,支持對象與數據庫的ORM字段關系映射
提供對象關系映射標簽,支持對象關系組建維護
提供XML標簽,支持編寫動態sql。
優缺點:
1.sql語句與代碼分離,存放于xml配置文件中:
優點:便于維護管理,不用在java代碼中找這些語句;
缺點: JDBC方式可以用用打斷點的方式調試,但是Mybatis不能,需要通過log4j日志輸出日志信息幫助調試,然后在配置文件中修改。
2.用邏輯標簽控制動態SQL的拼接:
優點:用標簽代替編寫邏輯代碼;
缺點:拼接復雜SQL語句時,沒有代碼靈活,拼寫比較復雜。不要使用變通的手段來應對這種復雜的語句。
3.查詢的結果集與java對象自動映射:
優點:保證名稱相同,配置好映射關系即可自動映射或者,不配置映射關系,通過配置列名=字段名也可完成自動映射。
缺點:對開發人員所寫的SQL依賴很強。
4.編寫原聲SQL:
優點:接近JDBC,比較靈活。
缺點:對SQL語句依賴程度很高;并且屬于半自動,數據庫移植比較麻煩,比如mysql數據庫編程Oracle數據庫,部分的sql語句需要調整。
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的mybatis与mysql的优点_MyBatis的优缺点以及特点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql api查询例子_MySQL数
- 下一篇: mysql git 获取 稳定版本 源码