首先配置 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 ibatis 配置(包括事务管理)"的详细说明: 1. **引入依赖**:首先,我们需要在项目中添加Spring和iBatis的相关依赖。通常,这会在Maven或Gradle的配置文件中完成,确保引入了正确的版本。 2. *...
Spring的`@Transactional`注解可以用来开启和管理这些分布式事务,确保事务的ACID特性。 7. **代码示例** 创建多数据源的配置文件,包括AtomikosDataSourceBean的定义、TransactionManager的配置以及...
- 在传统的Spring配置中,你可以通过`<tx:annotation-driven>`元素启用声明式事务管理,并指定事务管理器。例如: ```xml <bean id="transactionManager" class="org.springframework.jdbc.datasource....
本项目是关于如何使用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 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框架中,数据源(DataSource)是连接数据库的关键组件,它管理数据库连接的创建、分配和释放。DBCP(Basic Database Connection Pool)是Apache提供的一款开源的数据库连接池实现,它为Java应用提供了高效的...
本文将详细介绍Spring中的三种事务配置方式:编程式事务管理、声明式事务管理以及基于注解的事务管理。 **1. 编程式事务管理** 编程式事务管理是通过编程的方式手动控制事务的开始、提交、回滚等操作。主要使用`...
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 ...
同时,需要配置数据源(DataSource)和事务管理器(如`DataSourceTransactionManager`或`JpaTransactionManager`),以便Spring知道如何与数据库交互并管理事务。 ```xml <bean id="dataSource" class="org.spring...
首先,我们需要在Spring配置文件中启用事务管理器,例如使用`<tx:annotation-driven>`标签。这将扫描带有@Transactional注解的方法,并自动管理它们的事务边界。 ```xml <!-- ... --> ...
public DataSource springDataSource() { return dataSource; } } ``` - **XML配置**:在传统的Spring应用中,可以在`beans.xml`文件中配置数据源: ```xml <bean id="dataSource" class="org.spring...
本文将详细介绍Spring事务配置的五种方式,帮助你深入理解如何在Spring应用中管理事务。 1. **基于XML的声明式事务管理** 第一种方式是在每个Bean上使用代理来实现事务管理。首先,配置`DataSource`,通常是`...