1. JBOSS中数据源的配置(mysql-xa-ds.xml支持分布式的事务),如下:
<datasources>
<xa-datasource>
<jndi-name>test1</jndi-name>
<track-connection-by-tx>true</track-connection-by-tx>
<xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
<xa-datasource-property name="Url">jdbc:mysql://10.0.0.107:3306/test1?useUnicode=true&characterEncoding=UTF-8</xa-datasource-property>
<xa-datasource-property name="User">root</xa-datasource-property>
<xa-datasource-property name="Password">root</xa-datasource-property>
<metadata>
<type-mapping>mySQL</type-mapping>
</metadata>
</xa-datasource>
<xa-datasource>
<jndi-name>test2</jndi-name>
<track-connection-by-tx>true</track-connection-by-tx>
<xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
<xa-datasource-property name="Url">jdbc:mysql://10.0.0.106:3306/test?useUnicode=true&characterEncoding=UTF-8</xa-datasource-property>
<xa-datasource-property name="User">root</xa-datasource-property>
<xa-datasource-property name="Password">root</xa-datasource-property>
<metadata>
<type-mapping>mySQL</type-mapping>
</metadata>
</xa-datasource>
</datasources>
2. Spring application-Context.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/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx"
xmlns:jee="http://www.springframework.org/schema/jee"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-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/jee http://www.springframework.org/schema/jee/spring-jee-3.0.xsd">
<context:component-scan base-package="com.youyu" />
<jee:jndi-lookup id="dataSource_first" jndi-name="java:test1" />
<jee:jndi-lookup id="dataSource_second" jndi-name="java:test2" />
<bean id="transactionManager"
class="org.springframework.transaction.jta.JtaTransactionManager">
<property name="userTransactionName">
<value>java:comp/UserTransaction</value>
</property>
</bean>
<bean id="sqlSessionFactory_first" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource_first" />
<property name="configLocation" value="classpath:batisConfig_first.xml" />
</bean>
<bean id="sqlSessionFactory_second" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource_second" />
<property name="configLocation" value="classpath:batisConfig_second.xml" />
</bean>
<bean id="mapperScannerConfigure_first" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.youyu.access" />
<property name="sqlSessionFactory" ref="sqlSessionFactory_first" />
</bean>
<bean id="mapperScannerConfigure_second" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.youyu.accesstwo" />
<property name="sqlSessionFactory" ref="sqlSessionFactory_second" />
</bean>
<tx:annotation-driven transaction-manager="transactionManager" />
</beans>
3. Service的注解,如下:
public interface AccountService {
@Transactional(readOnly=false,propagation=Propagation.REQUIRED)
public abstract int signUp(String name, String email);
}
分享到:
相关推荐
"spring-transaction.jar"正是提供了Spring事务管理的类库,它包含了一系列用于处理事务的接口、类和配置元素,使得开发者能够方便地实现事务控制。 一、Spring 事务管理概述 Spring事务管理分为编程式事务管理和...
本篇主要聚焦于"Spring 常用 Transaction Annotation",即声明式事务管理,这是一种更简洁、易于维护的事务控制方式。 首先,Spring的声明式事务管理基于AOP(面向切面编程),它允许我们在不修改业务代码的情况下...
### Spring中的Transaction事务传播行为种类详解 #### 一、引言 在开发基于Spring框架的应用程序时,事务管理是确保数据一致性的重要手段之一。Spring框架提供了丰富的事务管理功能,其中包括了事务传播行为...
这个名为"springTransaction.rar"的压缩包文件包含了一个关于Spring事务管理的小型示例,旨在演示如何使用Spring的事务传播机制来处理数据库操作,特别是转账功能的实现。 首先,让我们了解一下什么是事务。在...
org.springframework.transaction-3.2.2.RELEASE最新版本
3. **Repository接口**:基于Spring Data JPA,我们可以定义Repository接口,Spring会自动实现这些接口,提供CRUD操作。通过在接口上添加`@Transactional`注解,整个查询或更新操作将在一个事务内执行。 4. **...
Spring中的事务管理问题:org.springframework.transaction-3.1.0.M1.jar包。org.springframework.transaction-3.1.0.M1.jar包。
org.springframework.transaction-3.1.0.M2
org.springframework.transaction-3.2.4.RELEASE.jar,最新版的org.springframework.transaction,Wed Aug 07 16:44:37 GMT+01:00 2013
org.springframework.transaction-3.1.0.M1.jar
本项目"spring-transaction-demo"是一个用于演示Spring框架事务管理特性的实例。下面我们将详细探讨Spring事务的传播机制以及其在实际应用中的七种使用方式。 1. **Spring事务的概述** Spring事务管理是通过编程或...
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.transaction.interceptor.TransactionInterceptor#0': Error setting property values; nested ...
org.springframework.transaction-3.0.0.M4.jar
分布式事务框架LCN支持springcloud 2.0.5 ,transaction-springcloud-4.1.2.jar
3. **Bean工厂与ApplicationContext**:在核心容器中,BeanFactory和ApplicationContext是两个关键接口。BeanFactory是基础,而ApplicationContext在BeanFactory之上提供了更多的企业级服务,如国际化、事件发布和...
本示例“spring-transaction-synchronization”主要探讨的是Spring的事务同步机制,这在多线程环境下处理数据库操作时尤其关键。下面将详细阐述相关知识点。 1. **Spring事务管理** - **声明式事务管理**:Spring...
在实际项目中,`springtransaction`工程可能是包含了一个完整的示例,用于演示如何在MyEclipse环境中配置和使用Spring的事务管理功能。开发者可以通过导入此工程,学习和实践Spring事务管理的配置与使用,从而更好地...
本资源提供的"软件依赖包(Spring AOP+Hibernate Transaction)"正是这样一种集合,它包含了Spring AOP和Hibernate Transaction管理的jar文件,使得开发者能够便捷地在Java应用中实现面向切面的编程(AOP)以及事务...
【Spring与Hibernate、Maven和Transaction的整合】 在现代Java Web开发中,Spring框架、Hibernate持久化工具和Maven构建工具是不可或缺的部分。Spring提供了强大的依赖注入和面向切面编程能力,Hibernate则简化了...
java运行依赖jar包