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

面試題首頁(yè) > Hibernate面試題

Hibernate常見(jiàn)面試題

001什么是 ORM 框架?

ORM是Object Relation Mapping的縮寫,意思是對(duì)象關(guān)系映射,是把數(shù)據(jù)庫(kù)中的關(guān)系數(shù)據(jù)映射成為程序中的對(duì)象。使用 ORM 的優(yōu)點(diǎn):提高了開(kāi)發(fā)效率降低了開(kāi)發(fā)成本、開(kāi)發(fā)更簡(jiǎn)單更對(duì)象化、可移植更強(qiáng)。

002簡(jiǎn)單介紹下Hibernate。

Hibernate是持久層框架,通過(guò)對(duì)JDBC進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得Java程序員可以隨心所欲的使用對(duì)象編程思維來(lái)操縱數(shù)據(jù)庫(kù)。

003Hibernate的優(yōu)點(diǎn)?

1)對(duì)JDBC訪問(wèn)數(shù)據(jù)庫(kù)的代碼做了封裝,大大簡(jiǎn)化了數(shù)據(jù)訪問(wèn)層繁瑣的重復(fù)性代碼。
2)Hibernate是一個(gè)基于JDBC的主流持久化框架,是一個(gè)優(yōu)秀的ORM實(shí)現(xiàn)。他很大程度的簡(jiǎn)化DAO層的編碼工作
3)Hibernate使用Java反射機(jī)制,而不是字節(jié)碼增強(qiáng)程序來(lái)實(shí)現(xiàn)透明性。
4)Hibernate的性能非常好,因?yàn)樗莻€(gè)輕量級(jí)框架。映射的靈活性很出色。它支持各種關(guān)系數(shù)據(jù)庫(kù),從一對(duì)一到多對(duì)多的各種復(fù)雜關(guān)系。

004Hibernate工作原理?

1.通過(guò)Configuration().configure();讀取并解析hibernate.cfg.xml配置文件
2.由hibernate.cfg.xml中的讀取并解析映射信息
3.通過(guò)config.buildSessionFactory();//創(chuàng)建SessionFactory
4.sessionFactory.openSession();//打開(kāi)Sesssion
5.session.beginTransaction();//創(chuàng)建事務(wù)Transation
6.persistent operate持久化操作
7.session.getTransaction().commit();//提交事務(wù)
8.關(guān)閉Session
9.關(guān)閉SesstionFactory

005Hibernate 對(duì)象有哪些狀態(tài)?

臨時(shí)/瞬時(shí)狀態(tài):直接 new 出來(lái)的對(duì)象,該對(duì)象還沒(méi)被持久化(沒(méi)保存在數(shù)據(jù)庫(kù)中),不受 Session 管理。
持久化狀態(tài):當(dāng)調(diào)用 Session 的 save/saveOrupdate/get/load/list 等方法的時(shí)候,對(duì)象就是持久化狀態(tài)。
游離狀態(tài):Session 關(guān)閉之后對(duì)象就是游離狀態(tài)。

006Hibernate中g(shù)et和load區(qū)別?

數(shù)據(jù)查詢時(shí),沒(méi)有 OID 指定的對(duì)象,get() 返回 null;load() 返回一個(gè)代理對(duì)象。
load()支持延遲加載;get() 不支持延遲加載。

007在Hibernate 中g(shù)etCurrentSession 和 openSession 的區(qū)別是什么?

getCurrentSession 會(huì)綁定當(dāng)前線程,而 openSession 則不會(huì)。
getCurrentSession 事務(wù)是 Spring 控制的,并且不需要手動(dòng)關(guān)閉,而 openSession 需要我們自己手動(dòng)開(kāi)啟和提交事務(wù)。

008如何在控制臺(tái)看到Hibernate生成并執(zhí)行的sql?

在定義數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)屬性的文件applicationConfig.xml里面,把hibernate.show_sql 設(shè)置為true,這樣生成的SQL就會(huì)在控制臺(tái)出現(xiàn)了。注意:這樣做會(huì)加重系統(tǒng)的負(fù)擔(dān),不利于性能調(diào)優(yōu)。

009Hibernate中save、persist和saveOrUpdate這三個(gè)方法的不同之處?

都是用于將對(duì)象保存到數(shù)據(jù)庫(kù)中的方法。
1)save()只能執(zhí)行INSERT操作,會(huì)立即執(zhí)行Sql insert,save()的返回值是一個(gè)Serializable對(duì)象;
2)saveOrUpdate()可以進(jìn)行 記錄的INSERT和UPDATE;
3)persist不保證立即執(zhí)行,可能要等到flush;persist不更新緩存;persist()方法返回值為void;

目錄

返回頂部
主站蜘蛛池模板: 欧美一级黄色片免费看 | 青青草狠狠干 | ww久久 | 亚洲国产一区二区三区青草影视 | 亚洲精品国产成人中文 | 永久福利盒子日韩日韩免费看 | 99re热久久这里只有精品6 | 1024手机基地在线看手机 | 欧美成人se01短视频在线看 | 手机在线一区二区三区 | 久久九九精品一区二区 | 欧美日韩精品 | 大胸美女被强吻胸动态图片 | 国产网站在线看 | 美女被躁免费视频软件 | 9久爱午夜视频 | 国产黄色a三级三级三级 | 一级aaaaaa毛片免费 | 成人午夜动漫在线观看 | 亚欧乱亚欧乱色视频免费 | 久久久亚洲天堂 | 色视网站 | 欧美一区色 | 欧美综合国产 | 黄色的视频网站 | 欧美日韩在线视频观看 | 欧美一区二区三区不卡 | 欧美日本一区亚洲欧美一区 | 三级不卡 | 欧美日韩三级在线 | 制服丝袜中文字幕第一页 | 青青草国产在线 | 夜夜拍夜夜爽夜夜拍拍拍 | 日韩综合在线视频 | 网站四虎1515hhcom | bt7086国产一区合集亚洲 | 免费一级a毛片在线 | 成人深夜视频在线观看 | 日韩影院在线观看 | 一个人看的www视频在线 | 欧美黑人巨大xxxx猛交 |