中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

常見的Hibernate面試題

發布時間:2021-01-25 15:50:57 來源:億速云 閱讀:181 作者:Leah 欄目:開發技術

常見的Hibernate面試題?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

作為常用的框架之一,Hibernate在面試的時候難免會被問到。好在涉及的都是一些理論方面的知識點,比如概念、原理、使用之類的。我們在面試之前可以針對這方面的題目,做一個充足的準備,即使有些人對hibernate框架的了解并不深入。下面我們就hibernate框架中常見的面試題帶來介紹。

1. 為什么要使用 hibernate?

(1).對JDBC做了輕量級的封裝,簡化了數據訪問層編碼。

(2).Hibernate是一個ORM框架,開發者可以使用面向對象的思想操作數據庫,使用更加方便。

(3) hibernate映射很靈活,支持各種關系數據庫,從一對一到多對多的各種復雜關系。

2.比較hibernate的三種檢索策略優缺點

(1)立即檢索;

優點: 對應用程序完全透明,不管對象處于持久化狀態,還是游離狀態,應用程序都可以方便的從一個對象導航到與它關聯的對象;

缺點:1.select語句太多;2.可能會加載應用程序不需要訪問的對象白白浪費許多內存空間;

(2)延遲檢索:

優點: 由應用程序決定需要加載哪些對象,可以避免可執行多余的select語句,以及避免加載應用程序不需要訪問的對象。因此能提高檢索性能,并且能節省內存空間;

缺點: 應用程序如果希望訪問游離狀態代理類實例,必須保證他在持久化狀態時已經被初始化;

(3)迫切左外連接檢索

優點:對應用程序完全透明,不管對象處于持久化狀態,還是游離狀態,應用程序都可以方便地沖一個對象導航到與它關聯的對象。使用了外連接,select語句數目少;

缺點:可能會加載應用程序不需要訪問的對象,白白浪費許多內存空間;復雜的數據庫表連接也會影響檢索性能;

3.什么是 ORM 框架?

(Object Relation Mapping)對象關系映射,即通過類與數據庫表的映射關系,將對象持久化到數據庫中。

4.hibernate對象的三種狀態

Hibernate中對象有三種狀態: 臨時狀態(Transient)、持久狀態(Persistent)、游離狀態(Detached)

臨時狀態:剛剛使用new語句創建,還沒有被持久化,不處于Session的緩存中。處于臨時狀態的狀態的Java對象被稱為臨時對象。

持久化狀態:已經被持久化,加入到Session的緩存中。處于持久化狀態的Java對象被稱為持久化對象。

游離狀態:已經被持久化,但不處于session的緩存中。處于游離狀態的Java對象被稱為游離對象。

5.Hibernate是如何延遲加載?

當Hibernate在查詢數據的時候,數據并沒有存在與內存中,當程序真正對數據的操作時,對象才存在與內存中,就實現了延遲加載,他節省了服務器的內存開銷,從而提高了服務器的性能。

面試題擴展:

1.一般情況下,關系數據模型與對象模型之間有哪些匹配關系(多選)

A)表對應類

B)記錄對應對象

C)表的字段對應類的屬性

D)表之間的參考關系對應類之間的依賴關系

2.以下關于SessionFactory的說法哪些正確?(多選)

A)對于每個數據庫事務,應該創建一個SessionFactory對象

B)一個SessionFactory對象對應一個數據庫存儲源。

C)SessionFactory是重量級的對象,不應該隨意創建。如果系統中只有一個數據庫存儲源,只需要創建一個。

D)SessionFactory的load()方法用于加載持久化對象

3.元素有一個cascade屬性,如果希望Hibernate級聯保存集合中的對象,casecade屬性應該取什么值?(單選)

A)none

B)save

C)delete

D)save-update

5.以下哪些屬于Session的方法?

A)load()

B)save()

C)delete()

D)update()

E)open()

F)close()

看完上述內容,你們掌握常見的Hibernate面試題的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

长春市| 贵定县| 平武县| 年辖:市辖区| 东阿县| 德阳市| 祁东县| 九寨沟县| 蓬安县| 越西县| 石城县| 长宁区| 页游| 遂宁市| 获嘉县| 大安市| 北京市| 金乡县| 宜兴市| 安顺市| 金平| 原阳县| 望谟县| 根河市| 浮梁县| 兴业县| 丘北县| 新平| 四平市| 寻乌县| 宣城市| 惠东县| 南阳市| 钟祥市| 阳朔县| 星子县| 汶上县| 黎城县| 琼中| 揭西县| 常宁市|