applicationContext.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: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.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd"
default-autowire="byName" default-lazy-init="true">
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath*:jdbc.properties</value>
</list>
</property>
</bean>
<!--===========loggingProxyCreator==============-->
<bean id="loggingProxyCreator"
class="org.springframework.aop.framework.autoproxy.BeanNameAutoProxyCreator">
<description></description>
<property name="beanNames">
<description></description>
<value>*Logic,*Action,*Service,*Dao</value>
</property>
<property name="proxyTargetClass">
<value>true</value>
</property>
<property name="interceptorNames">
<list>
<value>loggingInterceptor</value>
</list>
</property>
</bean>
<bean id="loggingInterceptor"
class="org.springframework.aop.interceptor.CustomizableTraceInterceptor">
<description></description>
<property name="useDynamicLogger">
<value>true</value>
</property>
<property name="enterMessage">
<description>方法开始调用时</description>
<value>方法开始[类名]=$[targetClassName]、[方法名]=$[methodName]、[参数值]=$[arguments]</value>
</property>
<property name="exitMessage">
<description>方法正常调用时</description>
<value>方法完成[类名]=$[targetClassName]、[方法名]=$[methodName]、[参数值]=$[arguments]、[返回值]=$[returnValue]</value>
</property>
<property name="exceptionMessage">
<description>异常发生时</description>
<value>异常发生[类名]=$[targetClassName]、[方法名]=$[methodName]、[参数值]=$[arguments]</value>
</property>
</bean>
</beans>
2.applicationContext-dataSource.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: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.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd"
default-autowire="byName" default-lazy-init="true">
<!--for JDBC dataSource -->
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</bean>
<!--for JNDI dataSource
<bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean">
<property name="jndiName">
<value>jndi/kpi</value>
</property>
</bean>
-->
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation" value="classpath:sql-map-config.xml" />
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="businessBean"
class="org.springframework.aop.framework.ProxyFactoryBean">
<property name="singleton">
<value>true</value>
</property>
<property name="proxyInterfaces">
<value>com.cn.tx.jjm.services.ITransationService</value>
</property>
<property name="interceptorNames">
<list>
<value>transactionInterceptor</value>
<!--value>com.cn.ffml.ytzk.PRD03U04.action.PRD03U04Action</value-->
</list>
</property>
<property name="proxyTargetClass"><value>true</value></property>
</bean>
<bean id="transactionInterceptor"
class="org.springframework.transaction.interceptor.TransactionInterceptor">
<property name="transactionManager">
<ref local="transactionManager" />
</property>
<property name="transactionAttributes">
<props>
<prop key="*">PROPAGATION_REQUIRED,-Exception</prop>
</props>
</property>
</bean>
</beans>
相关推荐
1. **添加依赖**:在项目构建工具(如Maven或Gradle)的配置文件中,我们需要引入Spring和iBatis的相关库。 2. **配置iBatis**:创建一个`SqlSessionFactoryBean`,它负责创建`SqlSessionFactory`,这是iBatis的...
解压后,我们可以深入研究具体的实现细节,例如`WEB-INF`目录下的Spring配置文件、iBatis的映射文件、DAO接口及其实现等。 总的来说,Spring和iBatis的整合使得开发人员能够利用Spring的高级特性,如依赖注入和事务...
Ibatis通过XML配置文件或注解来定义SQL语句,然后在Service层调用时,通过SqlSession执行这些SQL,返回结果集。这样既保留了SQL的灵活性,又简化了数据访问层的实现。 在Struts-Spring-Ibatis构架中,它们的协同...
5. **配置iBatis**:编写`mybatis-config.xml`,配置数据库连接信息,以及映射文件的位置。创建Mapper接口和XML映射文件,定义SQL语句。 6. **整合Struts2和Spring**:在Struts2的Action类中,通过Spring的`@...
4. **整合Struts2**:设置Struts2的配置文件(struts.xml),定义Action及其对应的Action类,通过Spring插件实现Action的依赖注入。 5. **Spring管理数据访问层**:Spring可以管理Hibernate的Session和iBatis的...
"spring+ibatis配置实例"这个项目提供了一个完整的开发环境,包含所需的依赖包和标准化的项目结构,对初学者或开发者来说极具价值。 Spring是一个全面的Java应用框架,它提供了依赖注入(Dependency Injection,DI...
2. 配置SqlSessionFactory:在Spring的配置文件中,通过bean定义SqlSessionFactory,通常基于XML配置文件或者Java配置类。 3. 配置MapperScannerConfigurer:用于扫描指定包下的Mapper接口,将其注册为Spring Bean。...
这样,我们可以在Spring的配置文件中定义数据源、事务管理器、SqlSessionFactoryBean等,然后通过@Autowired注解注入到需要使用iBatis的Service层或DAO层。 在"spring+ibatis整合jar包"中,通常包含以下组件的jar...
3. iBatis配置:创建一个名为`sqlmap-config.xml`的iBatis配置文件,定义数据源、事务管理器以及SQL映射文件的位置。 4. 映射文件:每个数据库表对应一个或多个SQL映射文件,如`UserMapper.xml`,其中定义了SQL语句...
首先,书中会详细介绍iBatis的基本概念和架构,包括它的核心组件——SqlMapConfig.xml配置文件、SqlMap接口以及Mapper XML文件。这些元素共同构建了iBatis的数据访问层,使得开发者可以自定义SQL语句,避免了传统的...
6. iBatis:iBatis是一个SQL映射框架,它允许开发者将SQL语句直接写在XML配置文件或注解中,避免了对JDBC的直接操作。iBatis可以与Spring无缝集成,提供灵活的数据库访问。`ibatis-api.chm`可能包括iBatis的基本配置...
在Spring3.0.2-RELEASE-API.chm中,我们可以看到关于Spring的核心模块如Core Container、Data Access/Integration、Web等的详细接口和类的说明,帮助开发者了解如何创建Bean、配置事务、集成数据访问层等。...
2. Spring的XML配置文件如何管理Bean,包括Service和DAO的定义,以及依赖注入的实现。 3. Ibatis的XML映射文件如何编写SQL语句,以及如何通过Mapper接口在Java代码中执行这些SQL。 4. 整合Spring和Ibatis,利用...
ibatis配置文件中,可以看到关于ibatis事务管理器的配置。这里设置事务管理器类型为JDBC,表示ibatis将直接使用底层的JDBC连接进行事务控制,而不是使用Spring提供的事务管理器。 ```xml ``` ...
- **iBatis配置**:编写MyBatis的配置文件(如`mybatis-config.xml`),设置数据源、事务管理器等,并定义Mapper接口和对应的XML映射文件。 4. **Mapper接口与XML映射文件** - **Mapper接口**:在Java中创建...
【Spring+iBatis配置归类】的文档主要涵盖了Spring框架与iBatis集成的细节,旨在简化数据库访问的代码,并提供统一的异常处理机制。在本文档中,我们将深入探讨Spring如何与iBatis协同工作,包括JavaBean实体、映射...
Spring提供了声明式事务管理,允许开发者在配置文件中定义事务边界,而无需在代码中显式处理。源码中,你可以看到TransactionProxyFactoryBean和PlatformTransactionManager是如何协同工作的,它们是如何实现事务的...
【Spring+iBatis配置】是软件开发中常见的一种技术整合,用于构建高效、灵活的数据访问层。Spring框架提供了对iBatis的内建支持,使得开发者可以更方便地使用iBatis进行数据库操作,同时利用Spring的优势进行事务...