- 浏览: 57299 次
- 性别:
- 来自: 洛阳
最新评论
-
macleo:
恋姐,
SSH中 Servlet init方法 里面获取到项目根目录 -
576017120:
lian 写道576017120 写道String hql=& ...
HQL多对多集合查询 -
lian:
576017120 写道String hql="up ...
HQL多对多集合查询 -
576017120:
String hql="update Member ...
HQL多对多集合查询 -
lian:
hibernate 在更新的时候 你只要设置好你要更新的字段 ...
HQL多对多集合查询
<?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:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.5.xsd" default-lazy-init="true">
二.定义数据源
<!-- 定义数据源的Bean ,给Hibernate的sessionFactory-->
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="com.mysql.jdbc.Driver">
</property>
<property name="url"
value="jdbc:mysql://localhost:3306/test">
</property>
<property name="username" value="root"></property>
<property name="password" value="123456"></property>
</bean>
三.定义SessionFactory
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="lobHandler">
<ref bean="lobHandler"/>
</property>
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
<!--设置二级缓冲-->
<prop key="hibernate.cache.provider_class">
org.hibernate.cache.EhCacheProvider
</prop>
<!--设置二级缓冲,打开查询缓冲-->
<prop key="hibernate.cache.use_query_cache">true</prop>
<!--设置显示Hibernate操作的SQL语句-->
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>
com/njwj/model/test.hbm.xml
</value>
</list>
</property>
</bean>
四.处理一些需要处理注入的Bean
<!-- 申明处理Clob对象LobHandler -->
<bean id="lobHandler" class="org.springframework.jdbc.support.lob.DefaultLobHandler" lazy-init="true" />
<bean id="TestHandlerDao" class="com.njwj.dao.TestHandlerDao">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<bean id="HandlerManager" class="com.njwj.service.HandlerManager">
<property name="saveTestHanlerdao" ref="TestHandlerDao"></property>
</bean>
五.配置事务管理器
<!-- 配置事务管理器 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
六.配置事务管理特性
<!-- 配置事务特性,配置add、delete和update开始的方法,事务传播特性为required-->
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="insert*" propagation="REQUIRED"/>
<tx:method name="delete*" propagation="REQUIRED"/>
<tx:method name="update*" propagation="REQUIRED"/>
<tx:method name="add*" propagation="REQUIRED"/>
<tx:method name="find*" read-only="true"/>
<tx:method name="list*" read-only="true"/>
</tx:attributes>
</tx:advice>
七.配置哪些类进行事务管理
<!-- 配置那些类的方法进行事务管理,当前com.njwj.service包中的子包、类中所有方法需要,还需要参考tx:advice的设置 -->
<aop:config>
<aop:pointcut id="allManagerMethod" expression="execution (* com.njwj.service.*.*(..))"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="allManagerMethod"/>
</aop:config>
八.配置Spring采用annotation(可选)
<context:annotation-config />
Web配置:
<!--定义Spring的配置的位置,可以定义多个配置文件,可以使用通配符。 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext*.xml</param-value>
</context-param>
<!--设置一起动当前的Web应用,就加载Spring,让Spring管理Bean-->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<!--解决Hibernate延迟加载出现的问题,需要放到struts2过滤器之前-->
<filter>
<filter-name>lazyLoadingFilter</filter-name>
<filter-class>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
</filter-class>
</filter>
<!--Struts2的过滤器,使用Struts2,必须配置该项-->
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<!--解决Hibernate延迟加载出现的问题,仍需要放到struts2过滤器mapping之前-->
<filter-mapping>
<filter-name>lazyLoadingFilter</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<!--Struts2的过滤器,配套的filter-mapping-->
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-2.5.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-2.5.xsd" default-lazy-init="true">
二.定义数据源
<!-- 定义数据源的Bean ,给Hibernate的sessionFactory-->
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName"
value="com.mysql.jdbc.Driver">
</property>
<property name="url"
value="jdbc:mysql://localhost:3306/test">
</property>
<property name="username" value="root"></property>
<property name="password" value="123456"></property>
</bean>
三.定义SessionFactory
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="lobHandler">
<ref bean="lobHandler"/>
</property>
<property name="dataSource">
<ref bean="dataSource" />
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.MySQLDialect
</prop>
<!--设置二级缓冲-->
<prop key="hibernate.cache.provider_class">
org.hibernate.cache.EhCacheProvider
</prop>
<!--设置二级缓冲,打开查询缓冲-->
<prop key="hibernate.cache.use_query_cache">true</prop>
<!--设置显示Hibernate操作的SQL语句-->
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>
com/njwj/model/test.hbm.xml
</value>
</list>
</property>
</bean>
四.处理一些需要处理注入的Bean
<!-- 申明处理Clob对象LobHandler -->
<bean id="lobHandler" class="org.springframework.jdbc.support.lob.DefaultLobHandler" lazy-init="true" />
<bean id="TestHandlerDao" class="com.njwj.dao.TestHandlerDao">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<bean id="HandlerManager" class="com.njwj.service.HandlerManager">
<property name="saveTestHanlerdao" ref="TestHandlerDao"></property>
</bean>
五.配置事务管理器
<!-- 配置事务管理器 -->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
六.配置事务管理特性
<!-- 配置事务特性,配置add、delete和update开始的方法,事务传播特性为required-->
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="insert*" propagation="REQUIRED"/>
<tx:method name="delete*" propagation="REQUIRED"/>
<tx:method name="update*" propagation="REQUIRED"/>
<tx:method name="add*" propagation="REQUIRED"/>
<tx:method name="find*" read-only="true"/>
<tx:method name="list*" read-only="true"/>
</tx:attributes>
</tx:advice>
七.配置哪些类进行事务管理
<!-- 配置那些类的方法进行事务管理,当前com.njwj.service包中的子包、类中所有方法需要,还需要参考tx:advice的设置 -->
<aop:config>
<aop:pointcut id="allManagerMethod" expression="execution (* com.njwj.service.*.*(..))"/>
<aop:advisor advice-ref="txAdvice" pointcut-ref="allManagerMethod"/>
</aop:config>
八.配置Spring采用annotation(可选)
<context:annotation-config />
Web配置:
<!--定义Spring的配置的位置,可以定义多个配置文件,可以使用通配符。 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext*.xml</param-value>
</context-param>
<!--设置一起动当前的Web应用,就加载Spring,让Spring管理Bean-->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<!--解决Hibernate延迟加载出现的问题,需要放到struts2过滤器之前-->
<filter>
<filter-name>lazyLoadingFilter</filter-name>
<filter-class>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
</filter-class>
</filter>
<!--Struts2的过滤器,使用Struts2,必须配置该项-->
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<!--解决Hibernate延迟加载出现的问题,仍需要放到struts2过滤器mapping之前-->
<filter-mapping>
<filter-name>lazyLoadingFilter</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
<!--Struts2的过滤器,配套的filter-mapping-->
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
发表评论
-
eclipse快捷键
2013-04-24 16:01 647Ctrl+1 快速修复(最经典 ... -
JS数组的操作
2013-03-16 10:20 6511、数组的创建 var arrayObj = new ... -
svn Locked的几种解决方法
2012-11-13 16:41 1001SVN错误:Attempted to lock an alre ... -
SSH中 Servlet init方法 里面获取到项目根目录
2012-07-02 16:19 1994public void init(ServletConf ... -
css div模仿select下拉框跳转效果
2012-06-13 14:28 1333<!DOCTYPE html PUBLIC " ... -
异步文件上传C:\fakepath\ 问题解决
2012-03-20 15:38 4588在用到weboffice控件上传文件附件的时候,出现了C:\f ... -
HQL多对多集合查询
2011-12-29 16:55 1862以前做过的一对多,多对一关系比较多,今天遇到了Hibernat ... -
weboffice在struts2环境下乱码解决方案
2011-12-19 17:44 855在post参数的地方使用encodeURI($("# ... -
swing光标设置
2011-07-21 14:27 3098今天在做swing开发的时候,在用快捷键监听事件的时候,默认让 ... -
Hibernate延迟加载问题解决方案
2011-06-15 16:11 994延迟加载异常!有五种解决方案: 1.在相应的映射文件里设置la ... -
制作透明的ICO图标
2011-06-13 18:07 1069一般的ICO做出来ICO图标不透明也不清楚,花了不少时间找到了 ... -
Oracle创建dba用户+导入导出数据库表
2011-04-21 11:02 15341.创建用户create user UserName ... -
jdk1.5下使用JSR250注解方式
2010-10-13 02:54 1957今天在部署一个项目,本来是项目是jdk6.0下开发的,服务器上 ... -
Javascript解析josn数据
2010-09-27 20:08 18341.简单的JS解析JOSN串的例子 2. var o ... -
Proxool连接池配置属性
2010-09-25 11:13 811Proxool连接池是sourceforge下的一个开源项目, ... -
mysql导出导入sql文件
2010-09-21 14:26 989>mysql -uroot -proot -hloc ... -
struts2标签取值方式
2010-09-21 14:01 11951.标签取值方式一 通过<s:property ... -
Ubuntu下配置Java环境+Tomcat
2010-09-19 13:09 1117最近,公司的项目 ... -
Struts2中使用Servlet
2010-05-03 17:26 1182今天在做一个Struts2的项目的时候,要使用到验证码,当时就 ... -
构建项目注意事项
2010-04-29 16:10 836做java开发也有一段时间了,今天我来总结下在小公司里面构建项 ...
相关推荐
### Spring2.5 + Hibernate3.2 + Struts2.0 组合配置说明 在当前的软件开发领域,Spring2.5、Hibernate3.2 和 Struts2.0 这三个框架因其卓越的性能与丰富的功能而备受青睐。它们分别在业务逻辑层管理、数据持久化...
**JPA+Spring2.5+Struts2.0整合详解** 在Java开发领域,Spring、Struts和JPA(Java Persistence API)是常见的三大框架,它们分别在依赖注入、MVC架构和对象关系映射方面发挥着重要作用。本实例将深入讲解如何将这...
超级详细的SSH2项目实例详解,并且附带两个项目详解。两种注解实现方式。不同的生成数据脚本实现。 在JavaEE企业级开发中,以SSH2框架为核心的应用非常广,大象根据项目实践经验,通过二个实例,详细的为大家讲解...
### Struts2.0-Hibernate3.2-Spring2.0 整合详解 #### 一、概述 本文档详细介绍了如何将Struts2.0、Hibernate3.2与Spring2.0三个框架进行整合的过程及其原理。这种整合模式不仅提高了开发效率,还增强了项目的可...
Struts2.1.6、Spring2.5和Hibernate3.3是经典的Java Web开发框架组合,被称为S2SH。这个框架整合提供了模型-视图-控制器(MVC)架构,使得开发者能够高效地构建企业级应用。下面将详细介绍这三个框架的配置步骤。 *...
### Struts2.1+Spring2.5+Hibernate3.2框架详解 #### Spring Framework 概述 **Spring** 是一款轻量级的开源框架,主要用于简化企业级应用的开发。Spring 主要有以下特点: - **轻量级**: Spring 的核心特性使其...
### Struts2、Hibernate3.2与Spring2.5集成步骤详解 在Java Web开发领域,Struts2、Hibernate和Spring三者结合是常见的企业级应用架构方案之一。本篇文章将详细阐述如何在MyEclipse6.5环境下,通过Tomcat6.0服务器...
本实例是基于Struts2版本2、Spring版本2.5以及Hibernate版本3.2的集成应用,旨在提供一个经典的用户注册功能。 **Struts2** 是一个强大的MVC(Model-View-Controller)框架,它通过Action类处理用户请求,将业务...
《Java框架整合:Hibernate3.2、Spring2.0与Struts2的汉化API详解》 在Java开发领域,Hibernate、Spring和Struts2是三个非常重要的框架,它们分别在对象关系映射(ORM)、依赖注入(DI)以及MVC架构方面提供了强大...
SSH2框架,即Struts2、Spring2.5和Hibernate3.2的集成,是Java Web开发中常见的三大组件。在本文档中,我们将详细探讨如何构建一个基于注释配置的SSH2应用,避免传统的XML配置,提升开发效率。 首先,我们来了解SSH...
8. **插件体系**:Struts2.0有一个丰富的插件生态系统,可以轻松集成其他技术,如Spring、Hibernate、i18n等。 9. **主题和皮肤**:Struts2.0允许开发者通过主题和皮肤来定制界面的外观和风格,提供了一种统一的...
### Struts2.0 + Hibernate3 + Spring2.5 整合配置详解 #### 一、概述 在软件开发过程中,使用多种框架进行整合能够更好地实现业务逻辑与数据访问层的分离,提高代码的可维护性和扩展性。Struts2.0、Hibernate3和...
### Struts1.2 + Hibernate3.2 + Spring2.5 (SSH) 集成详细过程 #### 一、前言 随着企业级应用的需求不断增长,单一框架已难以满足复杂的业务逻辑处理与数据持久化的高效管理。因此,集成多个框架成为了解决这一...
《SSH整合应用详解:Struts2.0+Spring+Hibernate实战》 SSH(Spring、Struts2.0、Hibernate)是Java开发中的经典组合,它将Spring的强大功能、Struts2.0的优秀MVC架构以及Hibernate的高效持久化能力完美结合,为...