- 浏览: 314471 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (254)
- java (178)
- tomcat (6)
- 邮件 (1)
- smtp (1)
- Linux (2)
- 编码 (2)
- 导入工程 (1)
- Specification Level (1)
- hibernate (10)
- 字段类型 (1)
- 字段类型匹配 (1)
- 数据库 (3)
- sql (9)
- struts2 (8)
- 类型转换 (2)
- java,MyEclipse,SVN (1)
- Myecplise (4)
- 输入校验 (1)
- JFrame (2)
- Oracle (8)
- google (1)
- Swing (3)
- Fusioncharts (1)
- 找工作 (0)
- js (4)
- jsp (11)
- displaytag (1)
- spring (8)
- 工作 (1)
- String (1)
- 算法 (2)
- IO (1)
- xml (3)
- 设计模式 (1)
- UML (1)
- 文档 (1)
- ajax (1)
- 日常 (7)
- sql server (1)
- mysql (3)
- git (1)
- Maven (1)
- mongodb (1)
- postman (1)
最新评论
首先是Spring整合Hibernate:
以前用我们用Hibernate的时候都是自己创建SessionFactory,然后创建Session。之后用Session操纵数据库。而现在我们可以用HibernateDaoSupport这个类,这个类是Spring里面的一个类,是借助Spring的帮组来完成我们的hibernate数据库操作。我们的Dao类可以继承这个类,然后有个方法getHibernateTemplate(),这个方法是获得针对当前Dao类的Hibernate模板,这个模板里有操纵数据库的各种方法,而且也有getSession()获得Session的方法。【模板里的操纵数据库的各种方法底层其实就是用的是Session在操纵数据库】
jar包引入方式参见iteye博客文章: java三大框架独立运行以及互相之间整合各自需要用到的jar文件以及配置方式 里面的hibernate整合spring步骤
HibernateDaoSupport是Spring里面的一个类(org.springframework.orm.hibernate3.support),这是一个方便的父类,用于基于hibernate Dao的数据访问对象。这个类里面有一些session,比如getSession()方法,返回的就是Hibernate里面的那个session。里面最重要的一个方法是getHibernateTemplate()方法,获得针对当前Dao的Hibernate模板。而得到的HibernateTemplate类里面的方法很多都是类似于Hibernate里面的Session里面的方法,其实它们底层的实现就是对应的采用Hibernate里面的Session里的对应的方法实现的。
而HibernateDaoSupport这个类是严重依赖于配置文件的,没有配置文件,它根本不知道SessionFactory在哪里。所以一定要通过Spring的配置文件告诉它SessionFactory在哪里,然后给它注入进去。但是问题又来了,SessionFactory对象我们又从哪里得到呢?hibernate整合Spring之后,hibernate的配置文件hibernate.cmf.xml就不用了,都配置在Spring的配置文件applicationContext.xml里面。所以现在SessionFactory是由Spring统一管理的,SessionFactory放到Spring的IOC容器里面由Spring来统一管理。下面讲解applicationContext.xml的配置方式。
1、 将SessionFactory注入到HibernateDaoSupport里。
2、 自己构建SessionFactory。获得SessionFactory有两种方式,第一种是通过获得一个连接,然后连接注入到SessionFactory里即可(以前讲的);第二种是使用数据库连接池,其实在实际开发里面单纯的用一个个连接这种方式基本不用,实际开发中用的都是数据库连接池,以前讲那种方式在实际开发中基本不用,java中常用的一种数据库连接池是dbcp, 要想使用dbcp就需要加入它依赖的jar包,commons-dbcp.jar和commons-pool.jar,我们用dbcp的时候要用到的一个类是BasicDataSource,数据源,我们需要在Spring的配置文件里面配置好数据源(配置上去之后就说明项目使用了dbcp)。数据源是一切数据的根源,把数据源配置好了,它可以给我们提供连接,然后把数据源注入到SessionFactory里面,这样的话SessionFactory就可以获得连接了,然后再把SessionFactory注入到HibernateDaoSupport(自己的Dao里)里面,然后就可以把Dao注入到Service层里面去…
我们在Spring的配置文件里面配置完连接池之后,就需要配置SessionFactory了,创建SessionFactory,注意,这个时候(Hibernate整合Spring之后)我们就不再使用Hibernate的那个SessionFactory了,在Spring里它提供了一个对SessionFactory的封装,封装的类的名字是LocalSessionFactoryBean。LocalSessionFactoryBean会创建一个SessionFactory,创建SessionFactory需要将刚配置完成的数据源BasicDataSource注入到LocalSessionFactoryBean里面。
因为这里的LocalSessionFactoryBean代表了Hibernate那个配置文件hibernate.cfg.xml,对于那个文件自己还有一些额外的信息,比如是否显示hql语句、映射文件在什么地方等等。mappingResource参数指定的是hbm文件的位置映射。
我们自己写的dao本身继承了HibernateDaoSupport,而HibernateDaoSupport又依赖于上面配置完成的sessionFactory,所以需要将sessionFactory注入到Dao里面。
详细整合信息见附件工程:重点查看配置文件applicationContext.xml连接池配置方式
以前用我们用Hibernate的时候都是自己创建SessionFactory,然后创建Session。之后用Session操纵数据库。而现在我们可以用HibernateDaoSupport这个类,这个类是Spring里面的一个类,是借助Spring的帮组来完成我们的hibernate数据库操作。我们的Dao类可以继承这个类,然后有个方法getHibernateTemplate(),这个方法是获得针对当前Dao类的Hibernate模板,这个模板里有操纵数据库的各种方法,而且也有getSession()获得Session的方法。【模板里的操纵数据库的各种方法底层其实就是用的是Session在操纵数据库】
jar包引入方式参见iteye博客文章: java三大框架独立运行以及互相之间整合各自需要用到的jar文件以及配置方式 里面的hibernate整合spring步骤
HibernateDaoSupport是Spring里面的一个类(org.springframework.orm.hibernate3.support),这是一个方便的父类,用于基于hibernate Dao的数据访问对象。这个类里面有一些session,比如getSession()方法,返回的就是Hibernate里面的那个session。里面最重要的一个方法是getHibernateTemplate()方法,获得针对当前Dao的Hibernate模板。而得到的HibernateTemplate类里面的方法很多都是类似于Hibernate里面的Session里面的方法,其实它们底层的实现就是对应的采用Hibernate里面的Session里的对应的方法实现的。
而HibernateDaoSupport这个类是严重依赖于配置文件的,没有配置文件,它根本不知道SessionFactory在哪里。所以一定要通过Spring的配置文件告诉它SessionFactory在哪里,然后给它注入进去。但是问题又来了,SessionFactory对象我们又从哪里得到呢?hibernate整合Spring之后,hibernate的配置文件hibernate.cmf.xml就不用了,都配置在Spring的配置文件applicationContext.xml里面。所以现在SessionFactory是由Spring统一管理的,SessionFactory放到Spring的IOC容器里面由Spring来统一管理。下面讲解applicationContext.xml的配置方式。
1、 将SessionFactory注入到HibernateDaoSupport里。
2、 自己构建SessionFactory。获得SessionFactory有两种方式,第一种是通过获得一个连接,然后连接注入到SessionFactory里即可(以前讲的);第二种是使用数据库连接池,其实在实际开发里面单纯的用一个个连接这种方式基本不用,实际开发中用的都是数据库连接池,以前讲那种方式在实际开发中基本不用,java中常用的一种数据库连接池是dbcp, 要想使用dbcp就需要加入它依赖的jar包,commons-dbcp.jar和commons-pool.jar,我们用dbcp的时候要用到的一个类是BasicDataSource,数据源,我们需要在Spring的配置文件里面配置好数据源(配置上去之后就说明项目使用了dbcp)。数据源是一切数据的根源,把数据源配置好了,它可以给我们提供连接,然后把数据源注入到SessionFactory里面,这样的话SessionFactory就可以获得连接了,然后再把SessionFactory注入到HibernateDaoSupport(自己的Dao里)里面,然后就可以把Dao注入到Service层里面去…
我们在Spring的配置文件里面配置完连接池之后,就需要配置SessionFactory了,创建SessionFactory,注意,这个时候(Hibernate整合Spring之后)我们就不再使用Hibernate的那个SessionFactory了,在Spring里它提供了一个对SessionFactory的封装,封装的类的名字是LocalSessionFactoryBean。LocalSessionFactoryBean会创建一个SessionFactory,创建SessionFactory需要将刚配置完成的数据源BasicDataSource注入到LocalSessionFactoryBean里面。
因为这里的LocalSessionFactoryBean代表了Hibernate那个配置文件hibernate.cfg.xml,对于那个文件自己还有一些额外的信息,比如是否显示hql语句、映射文件在什么地方等等。mappingResource参数指定的是hbm文件的位置映射。
我们自己写的dao本身继承了HibernateDaoSupport,而HibernateDaoSupport又依赖于上面配置完成的sessionFactory,所以需要将sessionFactory注入到Dao里面。
详细整合信息见附件工程:重点查看配置文件applicationContext.xml连接池配置方式
- HibernateSpring.zip (3.1 MB)
- 下载次数: 2
发表评论
-
领域精通涉及技术点(不分先后)
2017-12-20 19:35 565Java8 netty jvm kafaka消息队列 上传下载 ... -
计算机各种单位讲解及换算
2017-12-13 13:54 1547我还听过有UK的 一、最小单位:位(bit,缩写为b) 在原 ... -
JAVA字符串格式化-String.format()和MessageFormat的使用
2017-12-05 10:39 1281String.format()常规类型的格式化 Stri ... -
eclipse启动项目常见问题
2017-11-16 17:46 1141今儿遇到了个问题,ecli ... -
字符编码笔记:ASCII,Unicode和UTF-8
2017-10-23 16:37 422讲的太牛逼了: http://ww ... -
emoji简单讲解
2017-10-23 15:17 918emoji处理方式大起底 http://blog.csdn.n ... -
BigDecimal讲解
2017-10-12 15:58 401BigDecimal 由任意精度的整数非标度值 和 32 位的 ... -
eclips 控制台console上不打印信息
2017-09-06 21:53 5391、进windows菜单 -> show view -& ... -
详解RequestMappingHandlerMapping和RequestMappingHandlerAdapter
2017-08-29 17:08 2913http://donald-draper.iteye.com/ ... -
用@ExceptionHandler 来进行切面异常处理
2017-08-29 11:47 2226有时候我们想处理某个类里Controller中抛出的异常怎么搞 ... -
Spring 注解@Component、@Repository、@Service、@Controller区别
2017-08-28 15:27 964spring 2.5 中除了提供 @Com ... -
线程的一点小总结
2017-08-23 20:36 661java中main方法启动的是一个进程还是一个线程? 答:是一 ... -
线程池
2017-08-23 17:35 477诸如Web 服务器、数据库 ... -
Class源码大概讲解
2017-08-23 16:47 476http://blog.csdn.net/a327369238 ... -
Spring 事务相关
2017-08-14 12:10 438Transactionz注解的readOnly ... -
把时间当做朋友-前言
2017-08-13 20:47 365要管理的不是时间,而是自己。人们生活在同一个世界,却又各自 ... -
单例里面的方法讲解
2017-08-11 14:55 457spring里的controller是单例的。系统针对每个co ... -
eclipse拷贝出来的项目名称还是原来的
2017-07-26 16:46 1031需要修改的有如下几个地方: 1、pom.xml里面打包的名字一 ... -
自定义hibernate方言,新增自定义函数
2017-06-27 10:47 843按位与运算(&)在许多数据库中都是支持的,遗憾的是,H ... -
http请求参数:header body paramter三种参数区别、联系
2017-06-19 10:46 477412345
相关推荐
spring-hibernate.jar
Maven整合Spring+SpringMVC+Hibernate+SpringDataJPA
Spring SpringMVC Hibernate整合 Spring SpringMVC Hibernate整合 Spring SpringMVC Hibernate整合 Spring SpringMVC Hibernate整合 Spring SpringMVC Hibernate整合
hibernate与spring整合demohibernate与spring整合demo
springmvc spring hibernate整合Demo 包含了CRUD 帮助初学者快速学习springmvc
Spring+hibernate整合源代码 结束Sping+hibernate 的使用方法 包括演示示例
本光盘是《整合Struts+Hibernate+Spring应用开发详解》一书的配书光盘,书中的代码按章存放, 即第二章所使用的代码放在codes文件夹的02文件夹下,依次类推。 本光盘根目录下有11个文件夹,其内容和含义说明如下: ...
Spring框架整合Hibernate框架,为大家提供一个学习案例.
SpringMVC+Hibernate+Spring整合实例源码下载,很完整的例子,需要的可以下载源码学习
Struts2+Hibernate+Spring整合开发深入剖析与范例应用03源码
spring_hibernate整合实例 spring_hibernate整合实例
Struts 2+Hibernate+Spring整合开发技术详解sample.pdf
Spring3.3与Hibernate2.1整合
Struts2+Hibernate+Spring整合开发技术详解19章网上书店完整源码(内附数据库导出文件) 与书上最后一章内容完全对应 可以结合书上教程进行最后一章学习
《JavaWeb整合开发完全自学手册》介绍如何整合Struts+Hibernate+Spring+Eclipse进行J2EE开发,所有实例都基于MyEclipseIDE开发,引领读者快速进入基于JavaWeb的J2EE应用领域。《JavaWeb整合开发完全自学手册》主要...
Struts技术资料 hibernate技术资料 spring技术资料 ssh整合技术(struts与hibernate整合,struts与spring整合,hibernate与spring整合,struts,hibernate,spring整合)
Struts2,Spring与Hibernate整合应用,学生成绩管理系统
Spring与hibernate 整合 简单示例 Spring与hibernate 整合 简单示例