MyBatis历史、MyBatis特性、MyBatis下载、MyBatis和其他持久层技术的比较
MyBatis的歷史
MyBatis最初是Apache的一個開源項目iBatis,2010年6月該項目被遷移到Google Code,在IBatis3.x正式更名為MyBatis,代碼在2013年11月遷移到Github上
IBatis是一個基于java的持久層框架,iBatis提供的持久層框架包括SQL Maps和Data Access Objects(DAO)
MyBatis特性
1.MyBatis是支持定制SQL、存儲過程以及高級映射的優(yōu)秀的持久層框架
2.MyBatis避免了幾乎所有的JDBC代碼和手動設(shè)置參數(shù)以及獲取結(jié)果集
3.MyBatis可以使用簡單的XML或注釋用于配置和原始映射,將接口和java的POJO(普通的java對象)映射成數(shù)據(jù)庫中的記錄
4.MyBatis是一個半自動的ORM(Object Relation Mapping)框架
提示:mybatis是java的實體類對象(pojo)與關(guān)系型數(shù)據(jù)庫之間的關(guān)系
MyBatis下載
下載地址:Releases · mybatis/mybatis-3 · GitHub
找到相應(yīng)的版本,點擊如下下載即可
MyBatis和其他持久層技術(shù)的比較
JDBC:
? ? ? ? 1.SQL夾雜在java代碼中耦合度高,導(dǎo)致硬編碼
? ? ? ? 2.維護不易且實際開發(fā)需求中SQL多有變化
? ? ? ? 3.代碼冗長,開發(fā)效率較低
Hibernate和JPA:
? ? ? ? 1.操作簡單,開發(fā)效率較高
? ? ? ? 2.程序中的長難復(fù)雜的SQL需要繞過框架
? ? ? ? 3.內(nèi)部自動生產(chǎn)的SQL,不容易做特殊優(yōu)化
? ? ? ? 4.基于全映射的全自動框架,大量字段的POJO進行部分映射時比較困難
? ? ? ? 5.反射操作太多,導(dǎo)致數(shù)據(jù)庫性能下降
MyBatis:
? ? ? ? 1.輕量級,性能出色
? ? ? ? 2.SQL和java編碼分開,功能邊界清晰;使得java代碼專注業(yè)務(wù),SQL語句專注數(shù)據(jù)
? ? ? ? 3.開發(fā)效率稍微遜色于Hibernate,但可以在接受的范圍內(nèi)
總結(jié)
以上是生活随笔為你收集整理的MyBatis历史、MyBatis特性、MyBatis下载、MyBatis和其他持久层技术的比较的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Halcon例程详解(植物测量) ——
- 下一篇: 谷歌浏览器怎么登录及开启同步功能