市場上的ORM框架
1俄精、MyBatis
- MybBatis本是Apache的一個開源項目iBatis,2010年這個項目由Apache SoftwareFoundation 遷移到了Google Code,
并且改名為MyBati.MyBatis著力于POJO和SQL之間的映射關(guān)系询筏,可以進(jìn)行更為細(xì)致的SQL,使用起來十分的靈活竖慧,上手簡單嫌套,容易掌握,所以深受開發(fā)者的喜歡圾旨,目前市場占有率最高踱讨,比較適合互聯(lián)應(yīng)用公司的API場景
2、Hibernate
- 開放源代碼的對象關(guān)系映射框架砍的,對JDBC進(jìn)行了非常輕量級的對象封裝痹筛,使得Java程序員可以隨心所欲地使用對象編程思維來操縱數(shù)據(jù)庫,并且對象有自己的生命周期廓鞠,著力對象與對象之間的關(guān)系帚稠,有自己的HQL查詢語言,所以數(shù)據(jù)庫的移植性很好床佳。Hibernate是完備的ORM框架滋早,是符合JPA規(guī)范的。Hibernate有自己的緩存機(jī)制夕土。從上手的角度來說比較難馆衔,比較適合企業(yè)級的應(yīng)用系統(tǒng)開發(fā)。
3怨绣、Spring Data JPA
- 可以理解為JPA規(guī)范的再次封裝對象角溃,底層還是使用了Hibernate的JPA技術(shù)實(shí)現(xiàn),引用JPQL(Java Persistence Query Language) 查詢語言篮撑,屬于Spring整個生態(tài)體系的一部分减细,隨著Spring Boot和Sping Cloud在市場上的流行,Spring Data JPA 也逐漸進(jìn)入大家的視野赢笨,他們組成有機(jī)的整體未蝌,使用起來比較方便,加快了開發(fā)的效率茧妒,使得開發(fā)者不需要關(guān)心和配置更多的東西萧吠,又有很大的靈活性,市場的認(rèn)可度越來越高
4桐筏、Spring Data 的子項目
Spring Data JPA 減少數(shù)據(jù)訪問層的開發(fā)量
Spring Data MongoDB 基于分布式存儲的數(shù)據(jù)庫MongoDB
Spring Data Redis key-value數(shù)據(jù)庫Redis