大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

面試題首頁 > 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)針對二級緩存,還有許多特有的策略

目錄

返回頂部
主站蜘蛛池模板: 国产91久久最新观看地址 | 女人牲交视频一级毛片 | 日本免费网址 | 国产三级在线精品男人的天堂 | 欧美日韩一卡二卡 | 一级毛片在线免费播放 | 久久久噜噜噜久久老司机 | 国产欧美在线观看不卡 | 欧美jizz19性欧美 | 成人免费一区二区三区在线观看 | 欧美xxxx成人免费网站 | 午夜欧美视频 | 同性女女黄h片在线播放 | 自拍中文字幕 | 农村女人十八毛片a级毛片 农村三级孕妇视频在线 | 日本在线观看www | 福利视频一区二区 | 正在播放国产乱子伦视频 | 久久福利免费视频 | 精品一区二区三 | 久久久久久久久久免费视频 | 国产成人亚洲综合a∨婷婷 国产成人亚洲综合欧美一部 | 欧美久久一区二区三区 | 99国产精品视频免费观看 | 丰满寡妇一级毛片 | 国产精品久久久久一区二区三区 | 国产视频毛片 | 免费观看一级欧美在线视频 | 91国视频在线 | 亚洲精品午夜久久久伊人 | 青青青爽线在线视频观看 | 精品性久久 | 五月婷六月婷婷 | 一级毛片一 | 中文字幕一区在线 | 亚洲精品日本一区二区在线 | 国产欧美日韩综合二区三区 | 深夜在线小视频 | 黄色影院在线观看视频 | 欧美成人毛片 | 大学生一级黄色片 |