search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

Java常見的框架面試題——HIBERNATE面試題

想拿高工資,面試中不單遇到的Java基礎問題了吧?框架問題也設計到了吧?哈哈哈,前沿教育小編又來發福利了,框架常見的幾個問題都在這裡了。

hibernate 面試題

示例 1 : 什麼是HIBERNATE

是一種輕量級的ORM的實現,是對JDBC的一種封裝。 ORM是意思是 對象與關係資料庫之間的映射 Object Relation Database Mapping.

示例 2 : POJO是什麼

POJO的全稱是plain old java object 相當於JAVA BEAN,又叫做實體類 entity bean

示例 3 : HIBERNATE 開發流程

一個包含如下這些步驟 1. 配置Hibernate.cfg.xml 裡面包含資料庫連接信息,哪些HBM,是否使用2級緩存,是否顯示SQL,方言等等 2. 配置 hbm 文件 大概是哪個類對應哪張表,屬性對應什麼欄位,各種關係映射,比如ONE-MANYMANY-ONEMANY-MANY 3.使用HIBNERATE 通過Configuration拿到SessionFactory, 接著拿到Session,然後進行一系列資料庫相關的業務操作

示例 4 : one-many怎麼配置

CategoryProduct的一對多為舉例 1. Category中要有一個setproducts 2. Category.hbm.xml中要有一對多映射 <set name="products" lazy="false"> <key column="cid" not-null="false" /> <one-to-many /> </set>

示例 5 : many-one怎麼配置

還是以ProductCategory為例 1. Product中要有一個category屬性 2. Product.hbm.xml 進行many-to-one配置

<many-to-one name="category" column="cid" />

示例 6 :

many-many 怎麼配置

UserProduct為例子 1. User中有products屬性 2. Product中有users屬性 3. 使用如下進行配置

<set name="products" table="user_product" lazy="false">

<key column="uid" />

<many-to-many column="pid" />

</set>

示例 7 : getload的區別

通過id獲取Product對象有兩種方式,分別是getload 他們的區別分別在於 1. 延遲載入 2. 對於id不存在的時候的處理

示例 8 : 常見查詢3種方式

這三種分別是

示例 9 : 三種狀態

實體類對象在Hibernate中有3種狀態 分別是瞬時,持久和脫管 瞬時 指的是沒有和hibernate發生任何關係,在資料庫中也沒有對應的記錄,一旦JVM結束,這個對象也就消失了 持久 指得是一個對象和hibernate發生聯繫,有對應的session,並且在資料庫中有對應的一條記錄 脫管 指的是一個對象雖然在資料庫中有對應的一條記錄,但是它所對應的session已經關閉了

示例 10 : openSessiongetCurrentSession的區別

Hibetnate有兩種方式獲得session,分別是: OpenSessiongetCurrentSession 他們的區別在於 1. 獲取的是否是同一個session對象 OpenSession每次都會得到一個新的Session對象 getCurrentSession在同一個線程中,每次都是獲取想同的Session對象,但是在不同的線程中獲取的是不同的Session對象 2. 事務提交的必要性 openSession只有在增加,刪除,修改的時候需要事務,查詢時不需要的 getCurrentSession是所有操作都必須放在事務中進行,並且提交事務后,session就自動關閉,不能夠再進行關閉

示例 11 : 1級緩存

hibernate默認是開啟一級緩存的,一級緩存存放在session

示例 12 : 2級緩存如何配置

Hibernate的一級緩存是在Session上,二級緩存是在SessionFactory 配置方式: 要在hibernate.cfg.xml中開啟

<property name="hibernate.cache.use_second_level_cache">true</property>

<property name="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</property>



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦