SessionFactory单例模式

1.SessionFactory是线程安全的,可以让多个执行线程同时存取SessionFactory而不会有数据共享的问题。

2.会化工厂缓存了生成的SQL语句和Hibernate在运行时使用的映射元数据。

3.需要注意的是SessionFactory是重量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够(单例模式),当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。

SessionFactory单例模式_第1张图片

以上代码步骤

1.声明一个私有的静态final类型的Configuration

2.声明一个私有的静态final类型的SessionFactory对象

3.通过静态代码块构建SessionFactory  

4.提供一个公有的静态方法供外部获取,并返回一个Session对象  

SessionFactory单例模式_第2张图片

session对象只被创建一次,避免了多次加载sessionfactory的负担


你可能感兴趣的:(SessionFactory单例模式)