Spring+Hibernate整合配置 --- 比较完整的spring、hibernate 配置

Spring+Hibernate整合配置

分类: J2EE2010-11-25 17:21 16667人阅读 评论(1) 收藏 举报

springhibernateclassactionservletmysql

在公司一直没有什么机会直接折腾SSH“原生态”的SSH当今比较流行的轻量级的框架,用着公司的框架也是郁闷异常,今天没事整整原来用过的一个项目的配置,发现就算是自己曾经用过的东西,如果较长时间不返过去重新学习,许多你半熟不熟的知识就是异常陌生。下面贴上我的一些配置,暂且权当备份吧。

web.xml

作为Java web项目最为重要的配置文件,下面我们看看我的一些相关配置。

<!-- 配置Spring上下文 -->

<context-param>

<param-name>contextConfigLocation</param-name>

<param-value>classpath:spring*.xml</param-value>

</context-param>

<!-- 启动 Spring 监听器 -->

<listener>

<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

</listener>

<!-- 编码过滤器 -->

<filter>

<filter-name>characterEncodingFilter</filter-name>

<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>

<init-param>

<param-name>encoding</param-name>

<param-value>UTF-8</param-value>

</init-param>

<init-param>

<param-name>forceEncoding</param-name>

<param-value>true</param-value>

</init-param>

</filter>

<filter-mapping>

<filter-name>characterEncodingFilter</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

<!-- 配置 OpenSessionInView -->

<filter>

<filter-name>hibernateOpenSessionInView</filter-name>

<filter-class>com.geek.core.dao.OpenSessionInView</filter-class>

<init-param>

<param-name>excludeSuffixs</param-name>

<param-value>js,css,jpg,gif,jpeg,mp3</param-value>

</init-param>

</filter>

<filter-mapping>

<filter-name>hibernateOpenSessionInView</filter-name>

<url-pattern>*.do</url-pattern>

</filter-mapping>

<!-- 配置 Spring Servlet 分发器 -->

<servlet>

<servlet-name>spring</servlet-name>

<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

<init-param>

<param-name>contextConfigLocation</param-name>

<param-value>classpath:spring-action.xml</param-value>

</init-param>

</servlet>

<servlet-mapping>

<servlet-name>spring</servlet-name>

<url-pattern>*.do</url-pattern>

</servlet-mapping>

Spring的相关配置文件,Hibernate也共用了Spring的配置文件

spring-action.xml

<!-- Web层Action类扫描 -->

<context:component-scan base-package="com.geek.core.web.action" />

<!-- Action类注解配置 -->

<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping"></bean>

<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"></bean>

<!-- 视图解析器配置 -->

<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">

<property name="viewClass" value="org.springframework.web.servlet.view.JstlView"></property>

<property name="prefix" value="/"></property>

</bean>

spring-persistence.xml

<!-- 配置注解注入 -->

<context:annotation-config />

<!-- 持久层类所在包扫描-->

<context:component-scan base-package="com.geek.core.dao.impl" />

spring-service.xml

<!-- 配置 Service 类扫描包 -->

<context:component-scan base-package="com.geek.core.service.impl" />

spring.xml [Hibernate共用]

<!-- MySQL 数据源配置 -->

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">

<property name="driverClassName"value="com.mysql.jdbc.Driver"></property>

<property name="url"value="jdbc:mysql://127.0.0.1:3306/smile"></property>

<property name="username" value="smile"></property>

<property name="password" value="smile"></property>

</bean>

<!-- Session 工厂配置 -->

<bean id="sessionFactory"class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">

<property name="dataSource"><ref bean="dataSource"></ref></property>

<property name="hibernateProperties">

<props>

<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>

<prop key="hibernate.hbm2ddl.auto">update</prop>

</props>

</property>

<!-- ORM [注解] 配置实体包 -->

<property name="packagesToScan">

<list>

<value>com.geek.core.pojo</value>

</list>

</property>

</bean>

<!-- 配置事务管理器 -->

<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">

<property name="sessionFactory" ref="sessionFactory"></property>

</bean>

<!-- 使用注解配置事务 -->

<tx:annotation-driven transaction-manager="transactionManager"></tx:annotation-driven>

注:在配置过程中也出现了相关的错误,组要是schema引入的问题,如context和tx的引入,所以需多加注意。

<beans

xmlns="http://www.springframework.org/schema/beans"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xmlns:p="http://www.springframework.org/schema/p"

xmlns:tx="http://www.springframework.org/schema/tx"

xmlns:context="http://www.springframework.org/schema/context"

xsi:schemaLocation="

http://www.springframework.org/schema/beans

http://www.springframework.org/schema/beans/spring-beans-3.0.xsd

http://www.springframework.org/schema/tx

http://www.springframework.org/schema/tx/spring-tx-3.0.xsd

http://www.springframework.org/schema/context

http://www.springframework.org/schema/context/spring-context-3.0.xsd">

…………

:)

时间: 2024-10-12 18:15:34

Spring+Hibernate整合配置 --- 比较完整的spring、hibernate 配置的相关文章

Spring与Hibernate整合,实现Hibernate事务管理

1.所需的jar包 连接池/数据库驱动包 Hibernate相关jar Spring 核心包(5个) Spring aop 包(4个) spring-orm-3.2.5.RELEASE.jar                 [spring对hibernate的支持] spring-tx-3.2.5.RELEASE.jar                     [事务相关] 2.配置文件 Product.hbm.xml <?xml version="1.0" encoding=

Spring与Hibernate整合

Spring与Hibernate整合 Spring与Hibernate整合关键点: 1) Hibernate的SessionFactory对象交给Spring创建:   SessionFactory即是hibernate.cfg.xml配置文件 2) hibernate事务交给spring的声明式事务管理. SSH整合: Spring与Struts: Spring与hibernate整合: SH整合步骤: 1)引入jar包 连接池/数据库驱动包   spring对c3p0连接池的支持比hiber

spring与hibernate整合(三种方式)

Spring与Hibernate整合关键点: 1) Hibernate的SessionFactory对象交给Spring创建: 2) hibernate事务交给spring的声明式事务管理. SSH整合: Spring与Struts: Spring与hibernate整合: SH整合步骤: 1)引入jar包 连接池/数据库驱动包 Hibernate相关jar Spring核心包(5个) Springaop 包(4个) spring-orm-3.2.5.RELEASE.jar           

beetl-spring Beetl的Spring整合扩展(2):Beetl与Spring MVC整合

二.Beetl与Spring MVC整合 本章主要介绍通过beetl-spring完成Beetl与Spring MVC整合的功能.和Beetl自带的BeetlSpringViewResolver及BeetlSpringView相比,本项目提供的BeetlViewResolver增强了视图解析器的功能,使多视图解析器各自使用各自的GroupTemplate以使用不同的Beetl配置成为可能. 2.1 BeetlViewResolver BeetlViewResolver是一个Spring MVC视

spring boot整合activeMQ

spring boot整合activeMQ spring boot整合MQ以后,对于消息的发送和接收操作更加便捷.本文将通过四个案例,分别讲解spring boot整合MQ: spring boot整合MQ发送queue消息 spring boot整合MQ发送topic消息 spring boot整合MQ以后如何让queue和topic消息共存 spring boot整合MQ以后topic消息如何持久化 下面分别进行讲解: 一. spring boot 整合MQ发送queue消息 搭建测试工程,

Spring+SpringMVC+Hibernate整合笔记(一)项目结构与配置

(1) entity 包 : 放置项目中的实体类(一个表一个类),pojo (2) util 工具包: 各种工具类(StringHelper类) ----M----- (3) dao 接口包: 各种操作接口类(ICRM_UserDao) (4) dao.impl 实现接口包:各种实习操作接口的实现类(CRM_UserDaoImpl) (5) service 接口包: 业务实现的接口(ICRM_UserService) (6)service.impl 实现业务接口的实现类(CRM_UserServ

Java框架:spring框架整合hibernate框架的xml配置(使用注解的方式)

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/sch

Spring整合HIbernate时,三种数据库连接池的配置和比较

现在常用的开源数据库连接池主要有c3p0.dbcp.proxool三种,其中: Spring                         推荐使用dbcp: Hibernate                  推荐使用c3p0和proxool: 1.  DBCP:Apache DBCP(DataBase connection pool)数据库连接池.是Apache上的一个 java连接池项目,也是 tomcat使用的连接池组件.单独使用dbcp需要3个包:common-dbcp.jar,c

spring与hibernate整合配置基于Annotation注解方式管理实务

1.配置数据源 数据库连接基本信息存放到properties文件中,因此先加载properties文件 1 <!-- jdbc连接信息 --> 2 <context:property-placeholder 3 location="classpath:io/shuqi/ssh/spring/transactionalAnnotation/jdbc.properties"/> 使用DBCP数据源配置xml如下 1 <!-- dbcp数据源配置 -->