`

Spring框架下的ibatis应用

阅读更多

针对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项目整合案例

    Struts2、Spring3和iBATIS是Java Web开发中常用的三大框架,它们各自负责不同的职责,协同工作可以构建出高效、松耦合的Web应用。在这个“struts2+spring3+ibatis项目整合案例”中,我们将深入探讨这三个框架如何...

    struts2+spring+Ibatis框架包

    Spring框架则是一个全面的企业级应用开发框架,它的核心特性包括依赖注入(DI)和面向切面编程(AOP)。依赖注入帮助解耦组件,使得代码更易于测试和维护。Spring还提供了对事务管理、数据访问、Web应用的支持,以及...

    spring3.0+ibatis 集成实例

    Spring 3.0 和 iBatis 的集成是一个常见的企业级应用开发模式,它结合了Spring的强大依赖注入(DI)和面向切面编程(AOP)能力与iBatis灵活的SQL映射机制,实现了业务逻辑层与数据访问层的分离,提高了代码的可维护...

    Spring与iBATIS的集成

    Spring与iBATIS的集成 iBATIS似乎已远离众说纷纭的OR框架之列,通常人们对非常流行的Hibernate情有独钟。但正如Spring A Developer's Notebook作者Bruce Tate 和Justin Gehtland所说的那样,与其他的OR框架相比...

    Struts2+Spring+Hibernate和Struts2+Spring+Ibatis

    Struts2+Spring+Hibernate和Struts2+Spring+Ibatis是两种常见的Java Web应用程序集成框架,它们分别基于ORM框架Hibernate和轻量级数据访问框架Ibatis。这两种框架结合Spring,旨在提供一个强大的、可扩展的、易于...

    spring、struts、ibatis框架搭建流程

    - **复制Log4j JAR文件**:将Spring框架解压文件夹下的`lib\log4j`中的所有jar文件复制到项目的`WEB-INF/lib`目录下。 - **配置web.xml**:编辑项目中的`WEB-INF/web.xml`文件,添加如下配置: - **display-name**...

    springmvc+spring3.1.0+ibatis2.3.4相关jar包

    Spring MVC、Spring 3.1.0 和 iBATIS 2.3.4 是 Java 开发中常用的三个组件,它们构建了一个强大的企业级应用程序框架。这个压缩包包含了这些组件的 jar 包,使得开发者能够在项目中快速集成和使用它们。 **Spring ...

    struts+spring+ibatis框架集合教程

    2. Spring框架:Spring是一个全面的后端开发框架,包括IOC(Inversion of Control)和AOP(Aspect Oriented Programming)等核心特性。IOC容器管理对象的生命周期和依赖关系,使得代码更加松耦合。AOP则允许开发者...

    spring struts ibatis 开发框架

    Spring框架的核心是IoC(Inversion of Control)容器,它负责管理对象的生命周期和对象间的依赖关系。通过XML配置或注解方式,Spring能够自动装配对象,减少代码间的耦合。此外,Spring的AOP功能允许开发者定义切面...

    Structs2.0+Spring2.5+Ibatis整合例子

    Spring框架则是一个全面的企业级应用开发框架,它提供了依赖注入(DI)和面向切面编程(AOP)等核心特性。在本项目中,Spring作为服务层和控制层的胶水,管理对象的生命周期和装配,如数据库连接池、事务管理等。此外,...

    springMVC+Spring3.1+Ibatis整合CRUD

    首先,SpringMVC是Spring框架的一个模块,用于构建Web应用程序。它通过DispatcherServlet接收HTTP请求,然后根据配置的HandlerMapping将请求转发到相应的Controller。Controller处理业务逻辑后,通过ViewResolver...

    Spring对IBatis的整合

    Spring框架与IBatis(现称为MyBatis)的整合为开发者提供了一种更简洁、更强大的数据库访问方式。Spring通过其内置的支持机制极大地简化了原有的IBatis访问代码,并且提供了与JdbcTemplate一致的异常处理方式。这种...

    Spring.net + Ibatis.net 框架的Demo

    总的来说,这个Demo是一个很好的实践平台,可以帮助.NET开发者深入理解Spring.NET和iBATIS.NET框架的使用,以及如何在实际项目中应用这些技术。通过研究和运行这个Demo,你将能够更好地掌握这两种框架,并提升你的...

    spring3 ibatis整合实例

    - `src/main/webapp`:Web应用目录,包括Web-INF下的dispatcher-servlet.xml(Spring MVC配置)、web.xml(Web应用配置)。 - `docs`:项目详解文档,可能包含如何构建、运行和理解项目的技术细节。 6. **整合...

    struts+spring+ibatis框架

    **Spring框架**则是一个全面的后端应用管理框架,它的核心功能包括依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)。依赖注入允许开发者在运行时动态地组装对象,降低了...

    Spring MVC+ibatis+oracle框架整合

    Spring MVC是Spring框架的一部分,是一个用于构建Web应用程序的模型-视图-控制器(MVC)架构。它提供了丰富的功能,如依赖注入、数据验证、本地化、国际化等。通过使用Spring MVC,开发者可以将业务逻辑、用户界面和...

    Ibatis+Spring+struts1框架搭建

    Spring框架是一个全方位的后端解决方案,它包括依赖注入(DI)、面向切面编程(AOP)、数据访问、Web应用、事务管理等多个模块。在本项目中,Spring主要作为容器来管理Bean,并协调Ibatis和Struts1之间的协作。...

    WEB项目-集成Flex3_BlazeDS3[1].2_Spring2.5.6_iBatis2.3.4_Struts2.1.8

    它与Spring框架结合使用时,可以实现更高级的事务管理和对象关系映射功能。 **Struts 2.1.8** 是基于MVC设计模式的Java Web框架,它为构建可维护和可扩展的Web应用程序提供了基础架构。Struts 2以其强大的拦截器...

    spring mvc+ibatis 框架 简单demo

    Spring MVC是Spring框架的一部分,它提供了模型-视图-控制器(MVC)架构模式,用于解耦应用程序的不同组件。在Spring MVC中,Controller处理用户请求,Model管理业务逻辑和数据,而View负责渲染结果。通过...

Global site tag (gtag.js) - Google Analytics