Hibernate核心开发接口

核心开发接口

1. Configuration

1.AnnotationConfigurationsql

2.进行配置信息的管理数据库

3.用来产生SessionFactory缓存

4.能够在configure方法中指定hibernate配置文件session

5.只需关注一个方法,即:buildSessionFactory()ui

2.SessionFactory

1.      用来产生和管理Sessionspa

2.      一般状况下每一个应用只须要一个SessionFactoryhibernate

3.      除非要访问多个数据库的状况代理

4.      关注两个方法 即:openSession()  getCurrentSession()对象

openSession每次都是新的,须要close接口

getCurrentSession从上下文找,若是有,用旧的,若是没有,建新的

         1.用途,界定事务边界

         2.事务提交自动close

 

2.Session

         管理一个数据库的任务单元

         方法(CRUD)

1.      save()

2.      delete()

3.      update()

4.      saveOrUpdate()

5.      load()

6.      get()

7.      find方法已经超时

8.      getload的区别

    a)       不存在对应记录时表现不同

    b)       Load返回的是代理对象,等到真正用到对象的内容时才发出sql语句

    c)        Get直接从数据库加载,不会延迟

9.      Clear方法

    a)       不管是load仍是get,都会首先查找缓存(一级缓存),若是没有,才会去数据库查找,调用clear方法能够强制清除session缓存。

10.   Query接口

    a)       参考hibernate查询的内容

11.   Note:

    a)       Hibernate中涉及不少很是很是细节的区别,但在实际应用中用的极少,请你们先享受些项目的乐趣,再来探讨这些细节问题。

        i.            好比savepersist的区别

        ii.            Merge,evict等方法

        iii.            SessionFactorygetCurrentSession

相关文章
相关标签/搜索