DataSource和SessionFactory的区别
博主在学习hibernate以及Spring 过程中 发现 这两个框架整合的时候 发现了 Hibernate 只需要配置一个SessionFactory就可以了~ 当我们要做一些操作的时候 我们直接openSession() 就可以获取的到一个Session进行操作~, 但是如果我们要使用jdbc编程的时候只需要配置一个DataSource 也可以~
那么问题来了 DataSource 和 SessionFactory 的区别是又是什么?
sessionFactory是线程安全的,是session的工厂类。SessionFactory并不是轻量级的!实际上它的设计者的意图是让它能在整个应用中共享。典型地来说,一个项目通常只需要一个SessionFactory就够了,但是当你的项目要操作多个数据库时,那你必须为每个数据库指定一个SessionFactory。 SessionFactory在hibernate中实际起到了一个缓冲区的作用,它缓冲了Hibernate自动生成的SQL语句和一些其它的映射数据,还缓冲了一些将来有可能重复利用的数据
datasource数据源是注入给sessionfactory的,然后关联到session中 读到这句的时候我就明白了 , 原来SessionFactory是基于dataSource上建立的。
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"><property name="dataSource" ref="dataSource" />
</bean>
深入的看了一下LocalSessionFactoryBean的这个类我发现了一段代码 确实是如此
protected SessionFactory buildSessionFactory() throws Exception {// Create Configuration instance.Configuration config = newConfiguration();DataSource dataSource = getDataSource();略。。。。。。。。
}
DataSource和SessionFactory的区别相关推荐
- 毕业设计(五)---spring学习笔记(3)之-dataSource,sessionFactory,hibernateTemplate,事务 的简单配置。...
2019独角兽企业重金招聘Python工程师标准>>> 一:dataSource 数据源配置 在applicationContext.xml 中配置 dataSource <b ...
- items属性的combo_【内存消耗问题】DataGridViewComboboxColoumn关于Items属性和DataSource属性的性能开销问题...
[问题场景]:新建窗体应用程序,Form中添加1个DataGridView控件,并新增1列数据(列类型为DataGridViewComboboxColoumn).下拉列表绑定15000条选项值,表格添 ...
- Spring JDBC-Spring对事务管理的支持
概述 事务管理关键抽象 Spring事务管理的实现类 Spring JDBC 和MybBatis的事务管理器的配置 JPA的事务管理器的配置 Hibernate的事务管理器的配置 JTA 的事务管理器 ...
- Mybatis官方文档及使用简记
Mybatis官方文档及使用简记 数据库建表 入门案例 无mapper类最传统的用法 使用mybatis generator 使用mybatis-generator mybatis-spring整合 ...
- 把对象交给spring管理的3种方法及经典应用
背景 先说一说什么叫把对象交给spring管理.它区别于把类交给spring管理.在spring里采用注解方式@Service.@Component这些,实际上管理的是类,把这些类交给spring来负 ...
- 你不知道的小技巧 — 把对象交给spring管理的3种方法及经典应用
背景 先说一说什么叫把对象交给spring管理.它区别于把类交给spring管理.在spring里采用注解方式@Service.@Component这些,实际上管理的是类,把这些类交给spring来负 ...
- 基于java的论坛管理系统设计(含源文件)
欢迎添加微信互相交流学习哦! 项目源码:https://gitee.com/oklongmm/biye 摘 要:当今社会正处在网络时代,信息化大潮席卷全球,网络正以前所未有的速度在我国普及开来.论坛以 ...
- springboot添加多数据源连接池并配置Mybatis
springboot添加多数据源连接池并配置Mybatis 转载请注明出处:https://www.cnblogs.com/funnyzpc/p/9190226.html May 12, 2018 ...
- spring基于注解程序开发
2019独角兽企业重金招聘Python工程师标准>>> 一.datasource.sessionfactory配置 <bean id="dataSource" ...
最新文章
- spring boot actuator 入门荔枝
- 编译并使用boost库(win7+boost1.60+vs2013)
- Android学习笔记(十八)——使用意图筛选器和实现浏览网页(附源代码)
- scala的map映射问题
- java ArrayList倒序
- pythonxml库_Python XML操作
- 如何打开苹果Mac触控板的三指拖移功能?
- Clover 驱动文件夹_四叶草Clover相关
- python写接口程序_利用Python开发PCAN程序接口
- (XWZ)的Python学习笔记Ⅱ------面向对象编程
- nodejs 加密压缩文件,解密解压文件
- at91sam9260 OpenWRT u-boot移植
- ccs中c语言定义布尔常量,ccs库里面有变量的定义,我在添加了头文件后编译显示没有定义变量呢...
- 关于计算机图像基础知识的整理
- 创意相册、3D立体相册
- 【内存】内存对齐 的原理
- Swin Transformer全方位解读【ICCV2021马尔奖】
- 利用Abel_Cain软件实现ARP欺骗
- C++ Primer Plus (第六版)编程练习记录(chapter8 函数探幽)
- 文字转成语音并播放出来