java細小知識總結

2021-08-21 20:16:51 字數 1335 閱讀 2606

public

static

void

main(string args)

private

static

inttest(int i) catch (exception e)finally

}

1、簡介

​ hibernate對資料庫結構提供了較為完成的封裝,主要物件導向,程式設計師甚至可以不需要太熟練掌握sql語句。

​ mybatis主要面向於sql語句查詢。

2、難易程度

​ hibernate的真正掌握要比mybatis來的更難,hibernate社群更熱鬧,mybatis少些

3、開發速度

​ hibernate與mybatis都有相應的生成**工具。可以生成簡單的dao層。針對高階查詢,mybatis需要手動編寫sql語句,以及resultmap。而hibernate有良好的對映規則,故無需關心sql的生成與結果的對映,更專注業務。

4、系統調優

hibernate的調優方案

制定合理的快取策略;

盡量使用延遲載入特性;

採用合理的session管理機制;

使用批量抓取,設定合理的批處理引數(batch_size);

進行合理的o/r對映設計

mybatis調優方案

mybatis在session方面和hibernate的session生命週期是一致的,同樣需要合理的session管理機制。mybatis同樣具有二級快取機制。 mybatis可以進行詳細的sql優化設計。

hibernate與具體資料庫的關聯只需在xml檔案中配置即可,所有的hql語句與具體使用的資料庫無關,移植性很好。mybatis專案中所有的sql語句都是依賴所用的資料庫的,所以不同資料庫型別的支援不好。

hibernate和mybatis的二級快取除了採用系統預設的快取機制外,都可以通過實現你自己的快取或為其他第三方快取方案,建立介面卡來完全覆蓋快取行為。

hibernate的二級快取配置在sessionfactory生成的配置檔案中進行詳細配置,然後再在具體的表-物件對映中配置是那種快取。

mybatis的二級快取配置都是在每個具體的表-物件對映中進行詳細配置,這樣針對不同的表可以自定義不同的快取機制。並且mybatis可以在命名空間中共享相同的快取配置和例項,通過cache-ref來實現。

因為hibernate對查詢物件有著良好的管理機制,使用者無需關心sql。所以在使用二級快取時如果出現髒資料,系統會報出錯誤並提示。

而mybatis在這一方面,使用二級快取時需要特別小心。如果不能完全確定資料更新操作的波及範圍,避免cache的盲目使用。否則,髒資料的出現會給系統的正常執行帶來很大的隱患。

Latex各種細小知識點總結

第一種 公式不要求編號,多行公式注意要加 換行,是用來對齊 setlength 上面兩行是對公式進行上下間距調整 centering 是對公式進行居中調整 同理於 begin end begin minimize f x subject to quad h x 0 end 此處注意要用來進行包裹,以...

HTML細小知識點

網頁字型樣式華文黑體 stheiti 網頁字型樣式華文楷體 stkaiti 網頁字型樣式華文宋體 stsong 網頁字型樣式華文仿宋 stfangsong 網頁字型樣式黑體 simhei 網頁字型樣式宋體 simsun 網頁字型樣式新宋體 nsimsun 網頁字型樣式仿宋 fangsong 網頁字型...

java知識總結

包的訪問控制 子類 同個包內 不同包內 public y y y protect y y n private n n n i o和流 四個抽象類 讀寫位元組 inputstream outputstream 讀寫unicode字元 reader writer iterator arraylist v...