首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

hibernate的Configuration,SessionFactory,Session在API中的一些懂得和翻译

2012-08-21 
hibernate的Configuration,SessionFactory,Session在API中的一些理解和翻译author:heaven一:Configuration

hibernate的Configuration,SessionFactory,Session在API中的一些理解和翻译
author:heaven
一:
Configuration:
   (1)当创建一个SessionFactory的时候,Configuration实例允许应用程序使用指定的资源文件和映

射文件,通常一个应用程序将创建唯一的Configuration,创建一个唯一的SessionFactory,接着创建

客户端请求服务的线程所需要的Session实例。

   (2)只被当做初始化一次,Sessionfactory不可改变,不能保留任何信息。

   (3)其中该对象里有个方法叫buildSessionFactory(),作用:在这个Configuration对象里使用资

源文件和映射文件,因此改变这个Configuration后,创建的SessionFactory将不受影响。



二:
SessionFactory:
   它的主要作用就是创建Session实例,通常一个应用程序有一个唯一的SessionFactory实例和从这

个SessionFactory里包含客户端请求服务所需要的Session。一个SessionFactory的内部状态时不可以

改变的只要它被创建,这个内部状态就被决定了,这种内部状态包含了所有的对象映射关系的元数据



三:
Session:
   (1)它是在java应用程序和Hibernate之间运行的主要接口。
   (2)Session的生命周期是逻辑事务的创建到结束(大型的事务可能分成若干个数据库事务)。
   (3)主要Session的方法是为映射的实体类对象提供创建,读,删操作。
   (4)一个实例可能存在三种状态:
         A:transient(短暂态):没有进行持久化,也没连接任何Session。
         B:persistent(持久态):连接了唯一的Session。
         C:detached(释放态):持久性过了,没有与任何Session关联。
   (5)短暂态实例可能被save(),persist(),saveOrUpdate()变为持久态,持久态可以被delete()方 

    法变为短暂态,任何状态的实例被get()或者load()方法返回都变为持久太,释放态可能被     

update(),saveOrUpdate(),lock()或者replicate()变为持久太,短暂态或者释放太的实例可以     

被一个持久化实例的merge()方法变为持久太。
   (6)调用save()和persist()(坚持的意思)方法的结果是插入SQL语句,delete()是删除的意      思

,update(),merge()是更新SQl语句。
   (7)设计者并没有打算设计成线程安全的,从一个SessionFactory实例替换为每一个线程或者事务

所包含的它自己的实例。



                  

热点排行