首先配置 datasource
我的数据源配置 来自于tomcat下 conf/context.xml
在这里你可以配置数据源信息 :
context.xml 配置
<Resource name="jdbc/testDB" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="root" password="" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://192.168.1.246:3306/TestDB?useUnicode=true&characterEncoding=utf-8"/>
dbonfig.properties文件 配置
jndiName=testDB
下面是applicationContextAction.xml配置文件
<bean id="propertyConfigurer"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>
WEB-INF/classes/config/dbonfig.properties
</value>
</list>
</property>
</bean>
<!--jndiName来自 配置文件-->
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>java:/comp/env/jdbc/${jndiName}</value>
</property>
</bean>
事务配置
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<!-- 将所有具有@Transactional注解的Bean自动配置为声明式事务支持 -->
<tx:annotation-driven transaction-manager="transactionManager" />
具体的DAO 及Service的配置 :设置注入
<bean id="sampleDAO" class="com.test.dao.SampleDAOImplBG"
autowire="byName" />
<bean id="sampleDAOProxy"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="proxyInterfaces">
<list>
<value>com.test.dao.SampleDAO</value>
</list>
</property>
<property name="target" ref="sampleDAO" />
<property name="transactionManager" ref="transactionManager" />
<property name="transactionAttributes">
<props>
<prop key="*">PROPAGATION_REQUIRED,-Exception</prop>
</props>
</property>
</bean>
<bean id="sampleService"
class="com.test.business.SampleServiceImpl">
<property name="sampleDAO" ref="sampleDAOProxy" />
</bean>
struts2 Action的配置:构造器注入
<bean id="SampletAction" class="com.test.web.SampleAction"
scope="prototype">
<constructor-arg ref="sampleService" />
</bean>
其他配置 可以参考下面超链
http://topinking.iteye.com/blog/248839
其实spring的 声明式事务管理配置,有5种方式 :下面是更为清晰的
根据代理机制的不同,总结了五种Spring事务的配置方式,配置文件如下
http://jiake.iteye.com/blog/599418
分享到:
相关推荐
Spring支持多个数据源的事务管理,但需要正确配置事务边界,确保跨数据源的事务一致性。 6. **测试与优化**:完成上述配置后,进行充分的测试以确保切换逻辑的正确性。同时,可以根据系统性能监控和调优数据源配置...
Spring通过AOP(面向切面编程)技术实现了声明式事务管理,可以通过XML配置或注解来实现。 ##### 1. XML配置示例 ```xml <!-- 定义数据源 --> <bean id="dataSource" class="org.apache.commons.dbcp....
实验 "Spring 声明事务" 是 Java 高级编程中的一个重要环节,旨在让学生掌握 Spring 框架中声明式事务管理的配置和使用。在实际应用中,事务管理是确保数据一致性、完整性和可靠性的关键组件。Spring 提供了声明式...
以下是关于"spring ibatis 配置(包括事务管理)"的详细说明: 1. **引入依赖**:首先,我们需要在项目中添加Spring和iBatis的相关依赖。通常,这会在Maven或Gradle的配置文件中完成,确保引入了正确的版本。 2. *...
- 在传统的Spring配置中,你可以通过`<tx:annotation-driven>`元素启用声明式事务管理,并指定事务管理器。例如: ```xml <bean id="transactionManager" class="org.springframework.jdbc.datasource....
Spring的`@Transactional`注解可以用来开启和管理这些分布式事务,确保事务的ACID特性。 7. **代码示例** 创建多数据源的配置文件,包括AtomikosDataSourceBean的定义、TransactionManager的配置以及...
本项目是关于如何使用Spring MVC与Hibernate结合来实现事务管理的实践教程,通过MyEclipse自动生成所需的包和配置文件。这里将详细讲解这一过程,以及涉及到的关键知识点。 首先,Spring MVC作为Spring框架的一部分...
Spring AOP 配置事务方法提供了一种灵活的方式来实现事务管理,通过配置事务特性和事务管理切面来实现事务管理。开发者可以根据需要配置事务管理器、数据源连接池和事务特性来实现特定的事务管理需求。
只需要在`application.properties`或`application.yml`中设置相关属性,Spring Boot就会自动配置并创建`DataSource`。 ```properties spring.datasource.url=jdbc:mysql://localhost:3306/mydb spring.datasource....
Spring的声明式事务管理是通过配置文件或注解的方式来实现的。这种方式将业务逻辑与事务管理代码分离,使得代码更加清晰且易于维护。 ##### 1.2 配置Spring声明式事务 要启用Spring的声明式事务管理,通常需要做...
Spring 2.5 实现事务管理(本地事务、分布式事务) Spring 框架提供了对事务管理的支持,它可以使得事务的管理变得更加简洁和灵活。事务管理是指在多个操作中维持一致性的机制,它可以确保在多个操作中,如果某个...
配置事务管理器时,需要指定数据源(`<bean id="dataSource" ...>`)和其他相关属性,例如`<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">`,并设置...
在Spring配置文件中,我们需要引入`tx`命名空间,并声明一个`PlatformTransactionManager`实例,例如,对于基于JDBC的事务管理,我们会使用`<bean id="transactionManager" class="org.springframework.jdbc....
本文将详细介绍Spring中的三种事务配置方式:编程式事务管理、声明式事务管理以及基于注解的事务管理。 **1. 编程式事务管理** 编程式事务管理是通过编程的方式手动控制事务的开始、提交、回滚等操作。主要使用`...
1. **事务定义**:`DefaultTransactionDefinition`用于设置事务的一些属性,如隔离级别、传播行为等。 2. **事务状态**:`TransactionStatus`对象表示当前事务的状态。 3. **事务管理器**:`...
1. **基于XML的全局事务配置**:这种方式通过在Spring配置文件中设置`<tx:advice>`和`<aop:config>`元素来实现事务管理。相比于第一种方式,这种方式更加简洁,适用于所有业务逻辑Bean。 2. **基于注解的事务配置**...
Spring 事务配置是Spring框架中不可或缺的一部分,它用于管理和协调应用程序中的事务边界,确保数据的一致性和完整性。在Spring中,事务配置主要涉及到三个核心组件:DataSource、TransactionManager和代理机制。...
本资料包"spring声明式事务管理+jdbc+连接池.zip"显然是针对Spring框架在数据库操作方面的深入学习,特别是如何利用Spring进行声明式事务管理和JDBC操作,以及如何配置和使用数据库连接池。接下来,我们将详细探讨这...
本篇将详细介绍如何在Spring 2.5版本中整合iBATIS 2.3,并利用Spring的声明式事务管理,以提升应用程序的稳定性和可维护性。 首先,我们需要了解Spring 2.5和iBATIS 2.3的基本概念。Spring 2.5是Spring框架的一个...
1. **定义事务配置**:在Spring配置文件中,我们需要配置事务管理器。通常,对于Spring JDBC或者Hibernate,我们会使用PlatformTransactionManager,如DataSourceTransactionManager。 ```xml ...