【6】進大廠必須掌握的面試題-Java面試-Hibernate

1.什麼是Hibernate Framework?

對象關係映射或對象關係管理(ORM)是將應用程序域模型對象映射到關係數據庫表的編程技術。Hibernate是基於Java的ORM工具,它提供了一個框架,用於將應用程序域對象映射到關係數據庫表,反之亦然。java

Hibernate提供了Java Persistence API的參考實現,使其成爲具備鬆散耦合優點的ORM工具的絕佳選擇。咱們可使用Hibernate持久性API進行CRUD操做。Hibernate框架提供了使用JPA批註以及基於XML的配置將純舊的Java對象映射到傳統數據庫表的選項。面試

一樣,Hibernate配置也很靈活,能夠從XML配置文件以及以編程方式完成。sql

2.使用Hibernate Framework有哪些重要好處?

使用Hibernate框架的一些重要好處是:數據庫

  1. Hibernate消除了JDBC附帶的全部樣板代碼,並負責管理資源,所以咱們能夠專一於業務邏輯。
  2. Hibernate框架提供對XML和JPA註釋的支持,這使咱們的代碼實現獨立。
  3. Hibernate提供了一種與SQL相似的強大查詢語言(HQL)。可是,HQL徹底面向對象,而且瞭解諸如繼承,多態性和關聯之類的概念。
  4. Hibernate是Red Hat Community的一個開源項目,已在全球範圍內使用。這使它成爲比其餘方法更好的選擇,由於學習曲線很小,而且有大量的在線文檔,而且能夠在論壇中輕鬆得到幫助。
  5. Hibernate易於與其餘Java EE框架集成,所以很是流行,Spring框架提供了將Hibernate與Spring應用程序集成的內置支持。
  6. Hibernate支持使用代理對象進行延遲初始化,而且僅在須要時才執行實際的數據庫查詢。
  7. Hibernate緩存有助於咱們得到更好的性能。
  8. 對於數據庫供應商特定的功能,Hibernate是合適的,由於咱們還能夠執行本機sql查詢。

Hibernate在前幾年是比較流行,如今感受沒落了,它包含您在ORM工具中將須要的全部功能。編程

3.解釋Hibernate架構。

HibernateArchitecture-Java面試問題-Edureka

4. get和load方法之間有什麼區別?

下面給出了get()和load()方法之間的區別。緩存

沒有。 get()** load()
1) 若是找不到對象,則 返回null 。 若是找不到對象,則引起ObjectNotFoundException 。
2) get()方法老是命中數據庫。 load()方法不會訪問數據庫。
3) 它返回一個真實的對象,而不是proxy 。 它返回一個代理對象。
4) 若是您不肯定實例是否存在,則應使用它。 若是您肯定實例存在,則應使用它。

5. Hibernate與JDBC相比有什麼優點?

Hibernate框架相對於JDBC的一些重要優勢是:架構

  1. Hibernate刪除了JDBC API附帶的許多樣板代碼,這些代碼看起來更清晰易讀。
  2. Hibernate支持繼承,關聯和集合。JDBC API不提供這些功能。
  3. Hibernate隱式提供事務管理,實際上,大多數查詢沒法在事務外部執行。在JDBC API中,咱們須要使用commit和rollback編寫用於事務管理的代碼。
  4. JDBC API拋出SQLException ,這是一個已檢查的異常,所以咱們須要編寫許多try-catch塊代碼。在大多數狀況下,它在每一個JDBC調用中都是多餘的,用於事務管理。Hibernate包裝JDBC異常並拋出JDBCException或HibernateException未經檢查的異常,所以咱們不須要編寫代碼來處理它。Hibernate內置的事務管理功能消除了try-catch塊的使用。
  5. Hibernate查詢語言(HQL)更加面向對象,而且與Java編程語言很是接近。對於JDBC,咱們須要編寫本機SQL查詢。
  6. Hibernate支持更好的性能緩存,不緩存JDBC查詢,所以性能低下。
  7. Hibernate提供了一些選項,經過它們咱們也能夠建立數據庫表,由於JDBC表必須存在於數據庫中。
  8. Hibernate配置可幫助咱們將JDBC之類的鏈接以及JNDI DataSource用於鏈接池。這是企業應用程序中很是重要的功能,而JDBC API徹底沒有。
  9. Hibernate支持JPA批註,所以代碼獨立於實現,可輕鬆地用其餘ORM工具替換。JDBC代碼與應用程序緊密結合。
歡迎關注 Java架構師社區公衆號.
本文轉載自 Java架構師必看 ,更多內容點擊查看!
相關文章
相關標籤/搜索