hibernate的核心类有那些?

hibernate的核心类有那些?


青春有我
浏览 577回答 1
1回答

精慕HU

Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。(1)Configuration:用于解析hibernate.cfg.xml文件和XXXXX.hbm.xml文件,并创建SessionFactory对象。Configuration对象用于配置并且启动Hibernate。Hibernate应用通过Configuration实例来指定对象--关系映射文件的位置或者动态配置Hibernate的属性,然后创建SessionFactory实例。(2)SessionFactory:初始化Hibernate,充当数据存储源的代理,创建Session对象。一个SessinFactory实例对应一个数据存储源,应用从SessionFactory中获得Session实例。如果应用同时访问多个DB,怎需要为每个数据库创建一个单独的SessionFactory实例。(3)Session:也被称为持久化管理器,对象级数据库操作。特点:1)不是线程安全的,因此在设计软件架构时,应该避免多个线程共享同一个Session实例。2)Session实例是轻量级的,所谓轻量级,是指它的创建和销毁不需要消耗太多的资源。这意味着在程序中可以经常创建或销毁Session对象,例如为每个客户请求分配单独的Session实例,或者为每个工作单位分配单独的Session实例。3)通常将每一个Session实例和一个DB事务邦定,也就是说,每执行一个DB事务,都应该先创建一个新的Session实例,不论事务执行成功与否,最后都应该调用Session的close()方法,从而释放Session实例占用的资源。注:每个Session实例都有自己的缓存,这个Session实例的缓存只能被当前的工作单元访问。(4)Query:执行数据库查询操作。要使用HQL(HibernateQueryLanguage)查询语句,HQL查询语句是面向对象的,它引用类名及类的属性名。(5)Transaction:用于管理操作事务。它对底层的事务接口做了封装,底层事务接口包括:JDBC API、JTA(JavaTransactionAPI)、CORBA(CommonObjectRequestBroker Architecture)API。3.Hibernate的5个核心类或接口:(1)Configuration:用于解析hibernate.cfg.xml文件和XXXXX.hbm.xml文件,并创建SessionFactory对象。Configuration对象用于配置并且启动Hibernate。Hibernate应用通过Configuration实例来指定对象--关系映射文件的位置或者动态配置Hibernate的属性,然后创建SessionFactory实例。(2)SessionFactory:初始化Hibernate,充当数据存储源的代理,创建Session对象。一个SessinFactory实例对应一个数据存储源,应用从SessionFactory中获得Session实例。如果应用同时访问多个DB,怎需要为每个数据库创建一个单独的SessionFactory实例。(3)Session:也被称为持久化管理器,对象级数据库操作。特点:1)不是线程安全的,因此在设计软件架构时,应该避免多个线程共享同一个Session实例。2)Session实例是轻量级的,所谓轻量级,是指它的创建和销毁不需要消耗太多的资源。这意味着在程序中可以经常创建或销毁Session对象,例如为每个客户请求分配单独的Session实例,或者为每个工作单位分配单独的Session实例。3)通常将每一个Session实例和一个DB事务邦定,也就是说,每执行一个DB事务,都应该先创建一个新的Session实例,不论事务执行成功与否,最后都应该调用Session的close()方法,从而释放Session实例占用的资源。注:每个Session实例都有自己的缓存,这个Session实例的缓存只能被当前的工作单元访问。(4)Query:执行数据库查询操作。要使用HQL(HibernateQueryLanguage)查询语句,HQL查询语句是面向对象的,它引用类名及类的属性名。(5)Transaction:用于管理操作事务。它对底层的事务接口做了封装,底层事务接口包括:JDBC API、JTA(JavaTransactionAPI)、CORBA(CommonObjectRequestBroker Architecture)API。二、工作原理1.Hibernate 的初始化.读取Hibernate 的配置信息-〉创建Session Factory1)创建Configeration类的实例。它的构造方法:将配置信息(Hibernate config.xml)读入到内存。一个Configeration 实例代表Hibernate 所有Java类到Sql数据库映射的集合。2)创建SessionFactory实例把Configeration 对象中的所有配置信息拷贝到SessionFactory的缓存中。SessionFactory的实例代表一个数据库存储员源,创建后不再与Configeration 对象关联。缓存(cache):指Java对象的属性(通常是一些集合类型的属性--占用内存空间。SessionFactory的缓存中:Hibernate 配置信息。OR映射元数据。缓存-大:重量级对象 小:轻量级对象3)调用SessionFactory创建Session的方法1】用户自行提供JDBC连接。Connection con=dataSource.getConnection();Session s=sessionFactory.openSession(con);2】让SessionFactory提供连接Session s=sessionFactory.openSession();4)通过Session 接口提供的各种方法来操纵数据库访问
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java