Hibernate核心开发接口

核心开发接口

1. Configuration

1.AnnotationConfiguration

2.进行配置信息的管理

3.用来产生SessionFactory

4.可以在configure方法中指定hibernate配置文件

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

2.SessionFactory

1.      用来产生和管理Session

2.      通常情况下每个应用只需要一个SessionFactory

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

 

你可能感兴趣的:(Hibernate核心开发接口)