1.sessionFactory 是什么

Hibernate的核心接口之一   SessionFactory接口:SessionFactroy接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。

2.sessionFactory 作用

用于管理Hibernate会话(session)的对象,所以,最最最简单的理解,你可以把sessionFactory想想成里面有一个DataSource;这个对象创建了,hibernate才真正和数据库连接上了。即SessionFactory维护着所有连接对象已经连接对象的分配和销毁;SessionFactory是线程安全的,并且创建和销毁需要消耗比较大的资源,所以整个应用里面针对一个数据库只需要一个SessionFactory即可;

SessionFactory管理着配置在其中的映射对象的解析数据,动作监听器,NamedQuery等大量信息;

sessionFactory的相关方法返回session对象,而不是平常的new关键字创建session

sessionFactory理解相关推荐

  1. logistics-6-decidedZone management

    2019独角兽企业重金招聘Python工程师标准>>> 业务: 1.decidedZone management_添加decidedZone 2.decidedZone manage ...

  2. hibernate中SessionFactory,Session的理解?

    Session接口         Session接口对于Hibernate   开发人员来说是一个最重要的接口.然而在Hibernate中,实例化的Session是一个轻量级的类,创建和销毁它都不会 ...

  3. 理解什么是MyBatis?

    2019独角兽企业重金招聘Python工程师标准>>> 理解什么是MyBatis? MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache s ...

  4. hibernate二级缓存理解

    2019独角兽企业重金招聘Python工程师标准>>> 缓存是介于应用程序和物理数据源之间,其作用是为了降低应用程序对物理数据源访问的频次,从而提高了应用的运行性能.缓存内的数据是对 ...

  5. 深入理解ThreadLocal

    学习JDK中的类,首先看下JDK API对此类的描述,描述如下: 该类提供了线程局部 (thread-local) 变量.这些变量不同于它们的普通对应物,因为访问某个变量(通过其 get 或 set ...

  6. Java面试之五大框架的理解

    五大框架(springMVC,struts2,spring,mybatis,hibernate) 说说你对springMVC框架的理解? 简要口述(如果感觉说的少可以在完整答案里面挑几条说) Spri ...

  7. Hibernate的执行流程——SessionFactory的创建

    Hibernate的执行流程: 1.创建Configuration类实例,用来读取并解析配置文件(如Hibernate.cfg.xml),一个Configuration实例代表hibernate所有P ...

  8. java spring多数据源配置文件_深入理解spring多数据源配置

    项目中我们经常会遇到多数据源的问题,尤其是数据同步或定时任务等项目更是如此.多数据源让人最头痛的,不是配置多个数据源,而是如何能灵活动态的切换数据源.例如在一个spring和hibernate的框架的 ...

  9. 对Spring的一些理解

    最近在复习一些关于框架的概念性问题,主要是为了最近的面试,怕被问到这些概念性的问题.不过在真正做开发的时候还是要好好理解这些框架的基本原理,以及它们的工作流程.这样,我们才能更好的使用这些框架.下面就 ...

最新文章

  1. 模糊数学笔记:二、模糊截集与分解定理
  2. OpenSessionInViewFilter作用及配置
  3. silverlight,WPF动画终极攻略之阳光灿烂篇(Blend 4开发)
  4. 代码设计的基础原则_设计原则:良好设计的基础
  5. python3 开发面试题(面向对象)6.6
  6. 大数据力推产业转型升级
  7. js默认点击一次_JavaScript初学者,一个小小的点击案例。
  8. Linux服务器安装宝塔面板,Linux服务器安装宝塔服务器管理控制面板
  9. Linux读取内核空间,linux,arm_arm如何在内核空间直接读写某个物理地址(或者进程的虚拟地址),linux,arm,c,linux-kernel,memory - phpStudy...
  10. php pdf文件上传,显示
  11. 【labelme软件】使用指南
  12. 微信开发者工具 文件删除操作 二次确认框 设置
  13. kotlin插件禁用导致的Android studio无法打开-mac
  14. 大众与以色列前情报头子组建网络安全公司
  15. 【转】强烈推荐几个新鲜、好玩、另类的小游戏
  16. 并发编程的三大特性——原子性,可见性,有序性
  17. html5在线显示word文档,JS实现获取word文档内容并输出显示到html页面示例
  18. 深度学习word2vec笔记之基础篇
  19. Golang 中 map 探究
  20. Zynq 【SDK裸机开发之PS】——串口接收缓存

热门文章

  1. Python从字符串中删除字符
  2. [转]给初学者的建议
  3. NVIDIA增速远超Intel,造成的威胁越来越大
  4. 计算机专业技术人员最高什么级,事业单位技术岗职称(事业单位专业技术岗(计算机专业)考职称)...
  5. java 后端解密获取微信的unionId
  6. 用Python给图片加上序号类的一致水印
  7. html select - selectedIndex
  8. matlab的plot没有反应,用plot画图没有反应
  9. RapidJSON v1.1.0 发布简介
  10. JS解析提取LRC格式的歌词