《!--第一个数据源--》
<bean id="r_dataSource" class="org.apache.tomcat.jdbc.pool.DataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:
mysql://xx.xx.xx.xx :3306/db? autoReconnect=true&failOverReadOnly=false&wait_timeout=1814400" />
<property name="username" value="reader" />
<property name="password" value="reader" />
<property name="initialSize" value="10" />
<property name="minIdle" value="10" />
<property name="maxIdle" value="50" />
<property name="maxActive" value="80" />
<property name="maxWait" value="10000" />
<property name="jmxEnabled" value="true" />
<property name="validationQuery" value="SELECT 1"/>
<property name="testOnBorrow" value="true"/>
</bean>
《!--第二个数据源--》
<bean id="i_dataSource" class="org.apache.tomcat.jdbc.pool.DataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://xx.xx.xx.xx:3306/db? autoReconnect=true&failOverReadOnly=false&wait_timeout=1814400" />
<property name="username" value="root" />
<property name="password" value="111111" />
<property name="initialSize" value="10" />
<property name="minIdle" value="10" />
<property name="maxIdle" value="50" />
<property name="maxActive" value="80" />
<property name="maxWait" value="10000" />
<property name="jmxEnabled" value="true" />
<property name="validationQuery" value="SELECT 1"/>
<property name="testOnBorrow" value="true"/>
</bean>
《!--不同的数据源注入不同的sessionFactory--》
<bean id="r_sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="configLocation" value="classpath:mybatis-config.xml" />
<property name="dataSource" ref="r_dataSource" />
</bean>
<bean id="i_sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="configLocation" value="classpath:mybatis-config.xml" />
<property name="dataSource" ref="i_dataSource" />
</bean>
《!--扫描mybatis包 请注意不同包下得数据源是不同的--》
<bean name="r_mapperScannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="com.xx.xx.xx" />
<property name="sqlSessionFactory" ref="r_sqlSessionFactory" />
</bean>
<bean name="i_mapperScannerConfigurer" class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="
com.xx.xx.xx " />
<property name="sqlSessionFactory" ref="i_sqlSessionFactory" />
</bean>
《!--配置事物-》
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager ">
<property name="dataSource" ref="i_dataSource" />
</bean>
<tx:annotation-driven transaction-manager="transactionManager" proxy-target-class="true" />
- 大小: 37.8 KB
分享到:
相关推荐
Spring Boot、MyBatis 和 Atomikos 的结合提供了一种解决方案,用于处理多数据源的分布式事务管理。以下是对这个主题的详细阐述。 首先,Spring Boot 是一个基于 Spring 框架的轻量级开发工具,它简化了配置过程并...
综上所述,"spring+mybatis+jta实现多数据源的分布式事物"项目为开发者提供了一个实用的示例,帮助他们了解和掌握在实际应用中如何处理复杂的事务场景。通过这个项目,开发者可以学习到Spring的事务管理、MyBatis的...
总的来说,SSM全注解配置大大提高了开发效率,Log4j提供了灵活的日志记录,事务控制确保了数据的正确性,而MyBatis的DAO配置使得数据库操作更加简洁直观。理解并掌握这些知识点,对Java开发者来说是非常重要的。
6. **实战步骤**:首先,配置SpringMVC和MyBatis的相关依赖,然后设置数据源和事务管理器。接着,创建Mapper接口和对应的XML文件,定义SQL查询。在Service层,使用@Autowired注入Mapper,通过其方法执行SQL。在...
本示例主要讲解如何使用Spring Boot结合MyBatis实现多数据源切换,并确保AOP事务管理仍然有效。 首先,我们需要配置多数据源。在Spring Boot中,可以使用`DataSource`接口的实现类,如`HikariCP`或`Druid`,创建两...
SpringMVC和MyBatis是Java Web开发中常用的两个框架,它们组合在一起形成的SSM(SpringMVC + Spring + MyBatis)架构是许多企业级应用的首选。在这个例子中,我们将深入探讨如何将这两个框架集成,实现分页功能以及...
2. 配置SqlSessionFactory:创建一个配置文件(如mybatis-config.xml),配置数据源、事务管理器等,然后在Spring的配置文件(如applicationContext.xml)中通过`<bean>`标签引用SqlSessionFactory。 3. 配置Mapper...
1. 配置Spring:在Spring的配置文件中,我们需要定义两个或更多的数据源,并配置Atomikos为事务管理器。每个数据源都应该有自己的事务属性,如隔离级别和事务超时时间。 2. 配置MyBatis:针对每个数据源,我们需要...
3. 配置数据源:定义数据源,如Druid或Apache DBCP,这是MyBatis与数据库交互的基础。 4. 创建Mapper接口:在Java代码中创建MyBatis的Mapper接口,定义SQL操作方法。 5. 编写Mapper XML文件:在资源目录下,创建...
引入属性文件,注解扫描包,druid(德鲁伊)配置数据源 (c3p0 dbcp druid),监控数据库,配置sqlSessionFactory 将spring与mybatis结合,装配dao或mapper接口,拦截器方式配置事物——事务通知
在MyBatis的配置中,也需要配置多个SqlSessionFactory,并指定对应的数据源: ```java @Bean(name = "writeSqlSessionFactory") public SqlSessionFactory writeSqlSessionFactory(@Qualifier("writeDataSource") ...
综上所述,这个项目是一个利用 Maven 构建的 Spring Boot 应用,它整合了多数据源、JTA 来处理分布式事务,使用 MyBatis 作为持久层框架,并且集成了某种模板引擎来生成动态页面。这样的设计使得项目具备处理大规模...
1. **配置与环境搭建**:MyBatis的使用始于创建`mybatis-config.xml`配置文件,它定义了数据源、事务管理器等核心设置。通过`<mappers>`标签可以引入XML映射文件,这些文件包含SQL语句和结果映射。 2. **SQL映射...
1. **配置**:MyBatis的配置文件(mybatis-config.xml)用于定义数据源、事务管理器、Mappers等核心组件。在Spring环境中,这些配置可以与Spring的bean配置合并,通过@Autowired注解进行依赖注入。 2. **Mapper接口...
1. MyBatis安装与配置:包括环境搭建、mybatis-config.xml配置文件详解、日志配置以及数据源设置等。 2. 映射文件与SQL语句:讲解了Mapper接口与XML映射文件的关系,以及如何编写动态SQL,如if、choose、when、...
其中,`mybatis-config.xml`是全局配置文件,用于设置MyBatis的行为,如数据源、事务管理器、类型处理器等。 2. **Mapper XML文件**:每个Mapper XML文件对应一个Java接口,定义了SQL语句和结果映射。通过`<select>...
1. **配置文件**:Mybatis的配置文件包含了数据源、事务管理器、SqlSessionFactory等重要元素的设置。理解这些配置项的意义及其作用,对于构建Mybatis环境至关重要。 2. **映射文件**:映射文件是Mybatis的核心,它...
1. **配置文件**:MyBatis 的核心配置文件是 `mybatis-config.xml`,它定义了数据源、事务管理器等全局设置。同时,它还包含对映射文件的引用,映射文件中包含了具体的 SQL 映射信息。 2. **SqlSessionFactory**:...
你需要理解如何配置数据源、事务管理器以及SqlSessionFactory。 2. **SqlSessionFactory**:SqlSessionFactory是Mybatis的核心对象,用于创建SqlSession,它是执行SQL的入口。通常我们会在应用启动时创建一个...