Hibernate 是一個開放源代碼的對象關係映射框架,也可以稱之為數據持久層框架,它對JDBC進行了非常輕量級的對象封裝,是一個全自動的orm框架,Hibernate 可以在應用EJB的J2EE架構中取代CMP,完成數據持久化的重任。
1、使用GNU寬通用公共許可證發行的自由、開源的軟件。
2、Hibernate 為麵向對象的領域模型到傳統的關係型數據庫的映射,提供了一個使用方便的框架。
3、Hibernate 是一種Java語言下的對象關係映射解決方案。
4、Hibernate 也是目前Java開發中最為流行的數據庫持久層框架,現已歸JBOSS所有。
5、Hibernate 的設計目標是將軟件開發人員從大量相同的數據持久層相關編程工作中解放出來。
6、Hibernate 還提供了麵向對象的數據查詢檢索機製,從而極大地縮短的手動處理SQL和JDBC上的開發時間。
7、無論是從設計草案還是從一個遺留數據庫開始,開發人員都可以采用Hibernate。
8、不僅負責從Java類到數據庫表的映射,還包括從Java數據類型到SQL數據類型的映射。
1、鞏固JPA支持Hibernate的核心。
2、Jcache支持,使用任何兼容的緩存實現Jcache作為二級緩存支持。
3、會話級批量支持
4、hibernate-java8模塊已被刪除,並已搬intohibernate核心功能。
5、支持java 8日期/時間類型作為查詢參數。
6、支持流媒體(java.util.stream.Stream)的查詢結果。
7、已添加了用於指定每個會話的寫操作的批處理大小的支持。
8、支持java.util.optional從方法返回null返回。
9、利用java 8”默認的方法”時,引入新的方法來擴展點。
優點:
1、更加對象化
以對象化的思維操作數據庫,我們隻需要操作對象就可以了,開發更加對象化。
2、移植性
因為Hibernate做了持久層的封裝,你就不知道數據庫,你寫的所有的代碼都具有可複用性。
3、Hibernate是一個沒有侵入性的框架,沒有侵入性的框架我們稱為輕量級框架。
對比Struts的Action和ActionForm,都需要繼承,離不開Struts。Hibernate不需要繼承任何類,不需要實現任何接口。這樣的對象叫POJO對象。
4、Hibernate代碼測試方便。
5、提高效率,提高生產力。
缺點:
1、使用數據庫特性的語句,將很難調優
2、對大批量數據更新存在問題
3、係統中存在大量的攻擊查詢功能
140.5M / 09-05
76.4M / 03-25
55M / 06-05
237.9M / 04-13
900.9M / 03-02
96.2M / 07-06
311.2M / 07-06
335M / 07-06
200M / 07-06
413.8M / 07-06
768.9M / 08-19
484.7M / 09-27
165.4M / 09-05
131.8M / 04-13
195.6M / 03-03
45.6M / 09-08
665.2M / 07-06
2.84G / 07-06
93M / 07-06
338.3M / 07-06
892.4M / 08-18
312M / 07-30
1.38G / 07-26
109.8M / 06-03
142M / 01-08
1.2M / 11-23
548.8M / 04-13
1.6M / 04-13
1.48G / 03-18
646.6M / 03-03
404M / 08-18
110.5M / 09-05
33.4M / 09-05
60M / 04-29
254M / 04-25
659M / 04-23
1M / 12-26
253.4M / 12-08
253M / 12-08
1.19G / 11-16
115.9M / 08-19
488.3M / 06-04
369M / 09-22
181.5M / 09-22
201.2M / 09-05
248.9M / 12-08
248.9M / 12-08
100.6M / 03-06
148.9M / 03-06
1.12G / 07-06
126.7M / 02-04
1.76G / 09-22
1.92G / 04-17
201.5M / 04-13
7.31G / 07-01
94.3M / 07-06
2.48G / 07-06
7.63G / 07-06
1M / 07-06
778.1M / 07-06
1.30G / 08-19
72M / 07-06
548.7M / 07-06
1.00G / 07-06
9.13G / 07-06
126.2M / 07-06
72M / 07-06
105.1M / 07-06
132M / 07-06
132M / 07-06