hibernate與mybatis個人見解

2021-08-22 08:17:14 字數 604 閱讀 1722

之前都是在用mybatis做資料互動層這塊,現在公司用hibernate。習慣了使用mybatis之後,總覺得hibernate這個框架使用起來並沒有那麼舒服。

1、在資料庫操作方面的區別:hibernate將資料庫操作語句封裝起來,這樣一來,整個框架會提高系統的開發速度,因為sql語句不需要自己來編寫,但是如果說需要用到比較複雜的資料庫操作的時候,hibernate的缺陷就暴露出來了。hibernate需要呼叫它內部封裝好的sql,通過各種方法組合之後進而實現自己的功能,這也是呼叫別人封裝的乙個缺陷。相對而言,mybatis可以根據開發者的需要,編寫自己需要的sql語句。感覺還是自己寫的東西用起來舒服。

2、在快取方面的區別:hibernate的二級快取在sessionfactory生成的配置檔案中進行配置,然後在對應的物件-表對映中進行相應的配置。mybatis只需在物件-表對映中進行的快取配置就可以。並且mybatis可以在工作區間可以進行快取配置的共享,通過cache-ref來實現。hibernate二級快取出現髒資料的時候,系統會自動儲存。mybatis應該避免cache的使用。

3、適用性:hibernate使用性比較高,封裝好的資料庫操作語句對各種資料都支援,但是mybatis只能對不同的資料庫進行不同sql語句的編寫。

spring整合使用持久層框架mybatis(二)

id sqlsessionfactory class org.mybatis.spring.sqlsessionfactorybean name datasource ref datasource name configlocation value classpath mybatis config....

hibernate與mybaitis快取對比

hibernate的一級快取為session,是內建快取,不可解除安裝。二級快取為sessionfactory,包含了內建快取和外接快取,sessionfactory 控制的程序級快取。是全域性共享的快取,凡是會呼叫二級快取的查詢方法 都會從中受益。當查詢時候,會首先查詢一級快取中的資料,如果沒有再...

Hibernate與JDO肩並肩

在theserverside.com上有一些人聲稱jdo的開發人員已經把jdo帶向錯誤的道路,並且指出hibernate相對更優秀。然而,根據我的經驗 它們有許多共同的特徵,包括 因此,jdo 和 hibernate 兩種版本的同一應用程式經常很相似。關於如何裝載物件和執行查詢,我們來看看下面的例子...