黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

面試題首頁 > Hibernate面試題

Hibernate緩存/映射面試題

001Hibernate是如何延遲加載?

通過設置屬性lazy進行設置是否需要懶加載。當Hibernate在查詢數據的時候,數據并沒有存在與內存中,當程序真正對數據的操作時,對象才存在與內存中,就實現了延遲加載,他節省了服務器的內存開銷,從而提高了服務器的性能。

002說一下 Hibernate 的緩存機制?

Hibernate 常用的緩存有一級緩存和二級緩存:
一級緩存:也叫 Session 緩存,只在 Session 作用范圍內有效,不需要用戶干涉,由 hibernate 自身維護,可以通過:evict(object)清除 object 的緩存;clear()清除一級緩存中的所有緩存;flush()刷出緩存;
二級緩存:應用級別的緩存,在所有 Session 中都有效,支持配置第三方的緩存,如:EhCache。

003Hibernate中怎樣實現類之間的關系?(如:一對多、多對多的關系)?

通過配置文件中的many-to-one、one-to-many、many-to-many來實現類之間的關聯關系的。

004可不可以將Hibernate的實體類定義為final類?

可以將Hibernate的實體類定義為final類,但不建議這么做。因為Hibernate會使用代理模式在延遲關聯的情況下提高性能,如果你把實體類定義成final類之后,因為 Java不允許對final類進行擴展,所以Hibernate就無法再使用代理了,如此一來就限制了使用可以提升性能的手段。

005在Hibernate 中使用 Integer 和 int 做映射有什么區別?

Integer 類型為對象,它的值允許為 null,而 int 屬于基礎數據類型,值不能為 null。

006為什么在Hibernate的實體類中要提供一個無參數的構造器?

Hibernate框架會調用這個默認構造方法來構造實例對象,即Class類的newInstance方法 ,這個方法就是通過調用默認構造方法來創建實例對象的 。如果在實體類中找不到無參數的構造器,這個方法就會拋出一個InstantiationException異常。

007Hibernate 如何進行批量更新?

Hibernate在做插入操作時會把要操作的對象全部放到自身的內部緩存來進行管理。當海量數據插入的時候,會有很多對象被納入內部緩存,就可能出現OutOfMemoryError(內存溢出異常),因此最好做到如下三點:
1.做海量數據批量操作一定要關閉控制臺顯示執行的sql語句;
2.繞過Hibernate API ,直接通過 JDBC API 來做,這個方法性能上是比較好的,也是最快的;
3.如果還是使用Hibernate API ,使用分段插入。

008如何優化Hibernate?

1)HQL優化
2)API的正確使用(如根據不同的業務類型選用不同的集合及查詢API)
3)主配置參數(日志,查詢緩存,fetch_size, batch_size等)
4)映射文件優化(ID生成策略,二級緩存,延遲加載,關聯優化)
5)一級緩存的管理
6)針對二級緩存,還有許多特有的策略

目錄

返回頂部
主站蜘蛛池模板: av小说在线阅读 | 日韩第四页 | 色噜噜成人综合网站 | 六月综合激情 | 欧美亚洲色图视频 | 黄色天堂网 | 国产在线天堂a v | 日本三级欧美三级人妇英文 | 高清午夜看片a福利在线观看琪琪 | 亚洲国产片在线观看 | 免费在线一级毛片 | 高清视频一区二区三区 | 色黄网| 人人干日日操 | 欧美日韩在线亚洲国产人 | 91视频com| 日本欧美一区二区三区不卡视频 | 欧美日韩国产一区二区三区伦 | 1769亚洲资源站365在线 | 国产午夜在线视频 | 日韩三级观看 | 日韩伦理一区二区 | 一级特黄aaaaaa大片 | 操人视频网站 | 国内外一级毛片 | 一级看片免费视频 | 日韩在线免费观看视频 | 精品手机在线视频 | 欧美午夜精品久久久久免费视 | 在线观看视频一区 | 欧美一级网站 | 99视频九九精品视频在线观看 | 色操在线 | 亚洲成年人网址 | 日韩高清在线播放 | 久久中文字幕制服丝袜美腿 | 污视频在线免费 | 天天操天天干天搞天天射 | 欧美中文字幕无线码视频 | 免费人成在线观看69式小视频 | 免费观看成人久久网免费观看 |