针对ibatis,Spring配置文件如下:
Ibatis-Context.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName">
<value>net.sourceforge.jtds.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:jtds:sqlserver://127.0.0.1:1433/Sample</value>
</property>
<property name="username">
<value>test</value>
</property>
<property name="password">
<value>changeit</value>
</property>
</bean>
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation">
<value>SqlMapConfig.xml</value>
</property>
</bean>
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource">
<ref local="dataSource"/>
</property>
</bean>
<bean id="userDAO" class="net.xiaxin.dao.UserDAO">
<property name="dataSource">
<ref local="dataSource" />
</property>
<property name="sqlMapClient">
<ref local="sqlMapClient" />
</property>
</bean>
<bean id="userDAOProxy" class="org.springframework.transaction.interceptor.TransactionPro
xyFactoryBean">
<property name="transactionManager">
<ref bean="transactionManager" />
</property>
<property name="target">
<ref local="userDAO" />
</property>
<property name="transactionAttributes">
<props>
<prop key="insert*">PROPAGATION_REQUIRED</prop>
<prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
</props>
</property>
</bean>
</beans>
可以看到:
1. sqlMapClient节点
sqlMapClient节点实际上配置了一个sqlMapClient的创建工厂类。
configLocation属性配置了ibatis映射文件的名称。
2. transactionManager节点
transactionManager采用了Spring中的DataSourceTransactionManager。
3. userDAO节点
对应的,UserDAO需要配置两个属性,sqlMapClient和DataSource,
sqlMapClient将从指定的DataSource中获取数据库连接。
Ibatis映射文件非常简单:
sqlMapConfig.xml:
<sqlMapConfig>
<sqlMap resource="net/xiaxin/dao/entity/user.xml"/>
</sqlMapConfig>
net/xiaxin/dao/entity/user.xml
<sqlMap namespace="User">
<typeAlias alias="user" type="net.xiaxin.dao.entity.User" />
<insert id="insertUser" parameterClass="user">
INSERT INTO users ( username, password) VALUES ( #username#,
#password# )
</insert>
</sqlMap>
UserDAO.java:
public class UserDAO extends SqlMapClientDaoSupport implements
IUserDAO {
public void insertUser(User user) {
getSqlMapClientTemplate().update("insertUser", user);
}
}
SqlMapClientDaoSupport(如果使用ibatis 1.x版本,对应支持类是
SqlMapDaoSupport)是Spring中面向ibatis的辅助类,它负责调度DataSource、
SqlMapClientTemplate(对应ibatis 1.x版本是SqlMapTemplate)完成ibatis操作,
而DAO则通过对此类进行扩展获得上述功能。上面配置文件中针对UserDAO的属性设
置部分,其中的属性也是继承自于这个基类。
SqlMapClientTemplate对传统SqlMapClient调用模式进行了封装,简化了上层访问
代码。
相关推荐
Struts2、Spring3和iBATIS是Java Web开发中常用的三大框架,它们各自负责不同的职责,协同工作可以构建出高效、松耦合的Web应用。在这个“struts2+spring3+ibatis项目整合案例”中,我们将深入探讨这三个框架如何...
Spring框架则是一个全面的企业级应用开发框架,它的核心特性包括依赖注入(DI)和面向切面编程(AOP)。依赖注入帮助解耦组件,使得代码更易于测试和维护。Spring还提供了对事务管理、数据访问、Web应用的支持,以及...
Spring 3.0 和 iBatis 的集成是一个常见的企业级应用开发模式,它结合了Spring的强大依赖注入(DI)和面向切面编程(AOP)能力与iBatis灵活的SQL映射机制,实现了业务逻辑层与数据访问层的分离,提高了代码的可维护...
Spring与iBATIS的集成 iBATIS似乎已远离众说纷纭的OR框架之列,通常人们对非常流行的Hibernate情有独钟。但正如Spring A Developer's Notebook作者Bruce Tate 和Justin Gehtland所说的那样,与其他的OR框架相比...
Struts2+Spring+Hibernate和Struts2+Spring+Ibatis是两种常见的Java Web应用程序集成框架,它们分别基于ORM框架Hibernate和轻量级数据访问框架Ibatis。这两种框架结合Spring,旨在提供一个强大的、可扩展的、易于...
- **复制Log4j JAR文件**:将Spring框架解压文件夹下的`lib\log4j`中的所有jar文件复制到项目的`WEB-INF/lib`目录下。 - **配置web.xml**:编辑项目中的`WEB-INF/web.xml`文件,添加如下配置: - **display-name**...
Spring MVC、Spring 3.1.0 和 iBATIS 2.3.4 是 Java 开发中常用的三个组件,它们构建了一个强大的企业级应用程序框架。这个压缩包包含了这些组件的 jar 包,使得开发者能够在项目中快速集成和使用它们。 **Spring ...
2. Spring框架:Spring是一个全面的后端开发框架,包括IOC(Inversion of Control)和AOP(Aspect Oriented Programming)等核心特性。IOC容器管理对象的生命周期和依赖关系,使得代码更加松耦合。AOP则允许开发者...
Spring框架的核心是IoC(Inversion of Control)容器,它负责管理对象的生命周期和对象间的依赖关系。通过XML配置或注解方式,Spring能够自动装配对象,减少代码间的耦合。此外,Spring的AOP功能允许开发者定义切面...
Spring框架则是一个全面的企业级应用开发框架,它提供了依赖注入(DI)和面向切面编程(AOP)等核心特性。在本项目中,Spring作为服务层和控制层的胶水,管理对象的生命周期和装配,如数据库连接池、事务管理等。此外,...
首先,SpringMVC是Spring框架的一个模块,用于构建Web应用程序。它通过DispatcherServlet接收HTTP请求,然后根据配置的HandlerMapping将请求转发到相应的Controller。Controller处理业务逻辑后,通过ViewResolver...
Spring框架与IBatis(现称为MyBatis)的整合为开发者提供了一种更简洁、更强大的数据库访问方式。Spring通过其内置的支持机制极大地简化了原有的IBatis访问代码,并且提供了与JdbcTemplate一致的异常处理方式。这种...
总的来说,这个Demo是一个很好的实践平台,可以帮助.NET开发者深入理解Spring.NET和iBATIS.NET框架的使用,以及如何在实际项目中应用这些技术。通过研究和运行这个Demo,你将能够更好地掌握这两种框架,并提升你的...
- `src/main/webapp`:Web应用目录,包括Web-INF下的dispatcher-servlet.xml(Spring MVC配置)、web.xml(Web应用配置)。 - `docs`:项目详解文档,可能包含如何构建、运行和理解项目的技术细节。 6. **整合...
**Spring框架**则是一个全面的后端应用管理框架,它的核心功能包括依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)。依赖注入允许开发者在运行时动态地组装对象,降低了...
Spring MVC是Spring框架的一部分,是一个用于构建Web应用程序的模型-视图-控制器(MVC)架构。它提供了丰富的功能,如依赖注入、数据验证、本地化、国际化等。通过使用Spring MVC,开发者可以将业务逻辑、用户界面和...
Spring框架是一个全方位的后端解决方案,它包括依赖注入(DI)、面向切面编程(AOP)、数据访问、Web应用、事务管理等多个模块。在本项目中,Spring主要作为容器来管理Bean,并协调Ibatis和Struts1之间的协作。...
它与Spring框架结合使用时,可以实现更高级的事务管理和对象关系映射功能。 **Struts 2.1.8** 是基于MVC设计模式的Java Web框架,它为构建可维护和可扩展的Web应用程序提供了基础架构。Struts 2以其强大的拦截器...
Spring MVC是Spring框架的一部分,它提供了模型-视图-控制器(MVC)架构模式,用于解耦应用程序的不同组件。在Spring MVC中,Controller处理用户请求,Model管理业务逻辑和数据,而View负责渲染结果。通过...