需要事务处理的方法:
该方法所在类不需要实现任何接口!!
public class aservers{
@Autowired
private DeptDAO deptopt;//spring 来完成deptopt的初始化 不需要写getter setter
public void insertDemoData() throws Exception{//一定不要自己catch抛出异常,否则不能回滚
Dept dept1=new Dept();
dept1.setName("事业部");
deptopt.save(dept1);
int i=1/0; //异常
}
}
spring 配置文件:
<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">
<!-- 定义切面 -->
<aop:config>
<aop:pointcut id="serviceOperation"
<!-- 模糊匹配需要拦截的包 -->
expression="execution(* com.casw.ssh.dept.actions.*.*(..))"/>
<aop:advisor pointcut-ref="serviceOperation" advice-ref="txAdvice"/>
</aop:config>
<!-- 定义需要管理的方法 -->
<tx:advice id="txAdvice" transaction-manager="transactionManager" >
<tx:attributes>
<!-- 模糊匹配需要拦截的方法 -->
<tx:method name="find*" read-only="true" />
<tx:method name="insert*" />
</tx:attributes>
</tx:advice>
<!-- 定义事务管理器,使用适用于Hibernte的事务管理器-->
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<!-- HibernateTransactionManager bean需要依赖注入一个SessionFactory bean的引用-->
<property name="sessionFactory">
<ref local="sessionFactory" />
</property>
</bean>
<!--其他配置略-->
OK 配置完毕, 出异常的话就会回滚,注释掉 int i=1/0, 就会更新数据库。
其实这样配置的最大好处就是aservers不需要 实现什么接口了,
分享到:
相关推荐
总结来说,这个demo项目提供了一个学习和实践Struts1.2、Spring2.5和Hibernate3.2集成的平台,涵盖了MVC设计模式、依赖注入、面向切面编程和对象关系映射等多个关键概念。通过深入研究和修改这个项目,开发者能够...
Spring2.5是全面的企业级应用框架,它不仅包含IoC(Inversion of Control,控制反转)容器,用于管理对象的生命周期和依赖关系,还提供了AOP(Aspect-Oriented Programming,面向切面编程)功能,实现了对横切关注点...
Spring2.5是核心的依赖注入(DI)和面向切面编程(AOP)框架,它可以管理对象的生命周期和依赖关系。在Spring2.5中,注解如`@Autowired`、`@Service`、`@Repository`和`@Controller`引入了无XML配置的可能性。`@...
标题中的“spring2.5 hibernate3.2 事务”涉及到的是两个关键的Java开发框架——Spring和Hibernate,以及它们在处理事务管理方面的整合。Spring是面向切面编程(AOP)的轻量级框架,提供了强大的事务管理功能;...
Spring2.5是全面的企业级应用框架,它涵盖了依赖注入(Dependency Injection,DI)、面向切面编程(Aspect-Oriented Programming,AOP)、事务管理、数据访问/集成、Web MVC等核心功能。在SSH集成中,Spring主要负责...
- **Spring2.5中文开发参考手册.chm**:这份文档会详细介绍Spring 2.5 的核心概念、配置、API使用以及如何在实际项目中应用Spring框架。 - **Hibernate_3.2.0_api.chm**:这份文档是Hibernate 3.2.0 的API参考,包含...
结合Spring和Hibernate,开发者可以实现声明式事务管理,这使得在Spring配置中定义事务边界变得简单。Spring的Hibernate支持还包括事务模板和HibernateTemplate,它们可以帮助开发者避免直接与SessionFactory和...
Spring2.5+hibernate搞定分布式事务Spring2.5+hibernate搞定分Spring2.5+hibernate搞定分布式事务布式事务 第三部分
spring2.5 + hibernate3.3 声明式事务 和所需jar包,spring2.5 + hibernate3.3 声明式事务 和所需jar包,spring2.5 + hibernate3.3 声明式事务 和所需jar包,
这个"spring2.5+hibernate基于xml配置的实例"是一个经典的组合,展示了如何在旧版本的Spring(2.5)和Hibernate中通过XML配置文件来整合和管理应用的组件。 首先,Spring 2.5是Spring框架的一个早期版本,它引入了...
Spring2.5则是一个全面的后端解决方案,它包含了依赖注入(DI)和面向切面编程(AOP)的核心特性,可以用来管理对象的生命周期和装配。此外,Spring的DAO支持和事务管理简化了数据访问层的实现。Spring与Hibernate的...
**Spring2.5** 是一个全面的Java应用框架,强调依赖注入(DI)和面向切面编程(AOP)。Spring的核心是容器,它可以管理对象的生命周期和对象间的依赖关系。Spring2.5引入了更多对JSR-303 Bean Validation的支持,...
spring2.5 + hibernate3.2x 标注(annotation)开发的简单示例 http://blog.csdn.net/IamHades/archive/2008/01/11/2038188.aspx
**Spring2.5** 是一个全面的、开源的应用程序框架,尤其擅长于管理对象之间的依赖关系,采用IOC(Inversion of Control,控制反转)和AOP(Aspect-Oriented Programming,面向切面编程)理念。Spring2.5增强了对JSR-...
**Spring2.5** 是一个轻量级的Java企业级应用框架,它的核心特性是依赖注入(DI)和面向切面编程(AOP)。DI允许开发者在运行时通过容器动态地将依赖关系注入到对象中,降低了组件之间的耦合度。AOP则提供了一种处理...
在这个“ssh搭建案例 spring2.5 hibernate3.1 struts1.2”中,我们将深入探讨这三个组件如何协同工作来实现一个转账案例,并通过Spring管理事务。 首先,Spring作为核心的框架,负责整个应用的依赖注入(DI)和面向...
**Spring2.5** 是一个全面的企业级应用框架,不仅支持Web层的开发,还涵盖了数据访问、事务管理、依赖注入、AOP(面向切面编程)等多个方面。在Spring2.5中,IoC(Inversion of Control,控制反转)和DI(Dependency...
这个"spring2.5+struts1+hibernate3.0 JAR包集合"正是这种经典组合的体现。 Spring框架,版本2.5,是一个全面的Java应用开发框架,强调的是依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented ...
Spring2.5作为企业级应用的基石,它提供了依赖注入(DI)和面向切面编程(AOP)功能,使得对象之间的关系更加松耦合。此外,Spring2.5还包含对数据访问的支持,如JDBC抽象和ORM集成,包括Hibernate。Spring的...
struts2 spring 2.5 hibernate3整合 CRUD实例含分页 整合版本struts2 spring 2.5 hibernate3 简单的实现了一个用户的CRUD操作(列表展示有分页版本) 设计到了Validate效验,excel生成下载