javaHibernate是什么
商業(yè)項目上,企業(yè)注重產(chǎn)品的性能,如果JDBC的代碼寫的非常優(yōu)化,那么JDBC架構運行效率最高,但是實際項目中,這一點幾乎做不到,這需要程序員非常精通JDBC,運用Batch語句。以下是小編為大家搜索整理的javaHibernate是什么,希望能給大家?guī)韼椭?更多精彩內(nèi)容請及時關注我們應屆畢業(yè)生考試網(wǎng)!
Hibernate執(zhí)行流程
1.通過Configuration().configure();讀取并解析hibernate.cfg.xml配置文件
2.由hibernate.cfg.xml中的
3.通過config.buildSessionFactory();//創(chuàng)建SessionFactory
4.sessionFactory.openSession();//打開Sesssion
5.session.beginTransaction();//創(chuàng)建事務Transation
6.persistentoperate持久化操作
7.session.getTransaction().commit();//提交事務
8.關閉Session
9.關閉SesstionFactory
Hibernate核心接口
Hibernate的核心接口一共有5個,分別為:Session、SessionFactory、Transaction、Query和Configuration。這5個核心接口在任何開發(fā)中都會用到。通過這些接口,不僅可以對持久化對象進行存取,還能夠進行事務控制。下面對這五的核心接口分別加以介紹。
1.Session接口:Session接口負責執(zhí)行被持久化對象的CRUD操作(CRUD的任務是完成與數(shù)據(jù)庫的交流,包含了很多常見的SQL語句。)。但需要注意的是Session對象是非線程安全的。同時,Hibernate的session不同于JSP應用中的HttpSession。這里當使用session這個術語時,其實指的是Hibernate中session,而以后會將HttpSesion對象稱為用戶session。
2.SessionFactory接口:SessionFactroy接口負責初始化Hibernate。它充當數(shù)據(jù)存儲源的代理,并負責創(chuàng)建Session對象。這里用到了工廠模式。需要注意的是SessionFactory并不是輕量級的,因為一般情況下,一個項目通常只需要一個SessionFactory就夠,當需要操作多個數(shù)據(jù)庫時,可以為每個數(shù)據(jù)庫指定一個SessionFactory。
3.Configuration接口:Configuration接口負責配置并啟動Hibernate,創(chuàng)建SessionFactory對象。在Hibernate的啟動的過程中,Configuration類的實例首先定位映射文檔位置、讀取配置,然后創(chuàng)建SessionFactory對象。
4.Transaction接口:Transaction接口負責事務相關的操作。它是可選的,開發(fā)人員也可以設計編寫自己的底層事務處理代碼。
5.Query和Criteria接口:Query和Criteria接口負責執(zhí)行各種數(shù)據(jù)庫查詢。它可以使用HQL語言或SQL語句兩種表達方式。
為什么使用Hibernate?
Hibernate進一步封裝了JDBC,對數(shù)據(jù)的操作也更加面向?qū)ο蠡恕J钩绦騿T不用在繁瑣的編寫Dao層,將更多的精力放在業(yè)務邏輯層上,調(diào)整PreapredStatement的Batch Size和Fetch Size等參數(shù),以及在必要的情況下采用結(jié)果集cache等等。而一般情況下程序員是做不到這一點的。因此Hibernate架構表現(xiàn)出最快的運行效率。關于Hibernate的好處還有很多,提供一個鏈接使用hibernate的11大優(yōu)勢
【javaHibernate是什么】相關文章:
javahibernate是什么07-22
hifi是什么06-27
帶寬是什么02-17
WDS是什么07-18
OfficeTab是什么02-22
ups是什么07-14
PoE是什么02-28
自考是什么05-21
RAMDAC是什么01-02