`
猪↘專屬|华
  • 浏览: 164004 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

spring与ibatis整合

阅读更多

1:导入spring与ibatis需要用的包。
2:新建一个POJO类。例如:
1. package cn.itcast;   
2.     
3.  public class Student {   
4.   private Integer id;   
5.     
6.   private String firstname;   
7.     
8.   private String lastname;   
9.     
10.   public String getFirstname() {   
11.    return firstname;   
12.   }   
13.     
14.   public void setFirstname(String firstname) {   
15.    this.firstname = firstname;   
16.   }   
17.     
18.   public Integer getId() {   
19.    return id;   
20.   }   
21.     
22.   public void setId(Integer id) {   
23.    this.id = id;   
24.   }   
25.     
26.   public String getLastname() {   
27.    return lastname;   
28.   }   
29.     
30.   public void setLastname(String lastname) {   
31.    this.lastname = lastname;   
32.   }   
33.  }  

3:根据这个POJO类写一个sqlmap_student.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="studetnt">
  <select id="select.student" resultClass="cn.itcast.Student" parameterClass="java.lang.Integer">  
    select id,firstname,lastname from student where id=#value#   
  </select> 
  <insert id="insertStudent" parameterClass="cn.itcast.Student">  
   insert into student
   (
    firstname,
  lastname
    )
   values
   (
    #firstname#,
    #lastname#
   )   
  </insert>
</sqlMap>

4:创建一个总的sqlMap-config.xml
里面可以配置很多的属性,以及数据查询时的配置
<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE sqlMapConfig     
    PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
    "http://ibatis.apache.org/dtd/sql-map-config-2.dtd">

<sqlMapConfig>
 <settings    
     cacheModelsEnabled="true"       
     enhancementEnabled="true"       
     lazyLoadingEnabled="true"       
     errorTracingEnabled="true"       
     maxRequests="128"           
     maxSessions="64"           
     maxTransactions="32"           
     useStatementNamespaces="false"/>
     
   <!-- ================================================================ -->
 <!-- 导入配置资源 ( 数据库模块配置文件) -->
 <!-- ================================================================ -->
 <sqlMap resource="sqlmap-student.xml" />
</sqlMapConfig>

 

5:创建一个有关数据源的properties文件取名为:jdbc.properties
# Properties file

datasource.driverClassName=oracle.jdbc.driver.OracleDriver
datasource.url=jdbc:oracle:thin:@localhost:1521:orcl
datasource.username=omsdata
datasource.password=omsdata_2010

datasource.maxActive=100
datasource.maxIdle=10
datasource.maxWait=120000
datasource.whenExhaustedAction=1
datasource.validationQuery=select 1 from dual
datasource.testOnBorrow=true
datasource.testOnReturn=false


6:配置spring的配置文件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:dwr="http://www.directwebremoting.org/schema/spring-dwr"
 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.directwebremoting.org/schema/spring-dwr http://www.directwebremoting.org/schema/spring-dwr-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">


 <!-- ==================================================== -->
 <!-- 配置多资源文件 -->
 <!-- ==================================================== -->
 <bean id="propertyConfigurer"
  class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="locations">
   <list>
    <value>classpath:meyacom.properties</value>
   </list>
  </property>
 </bean>


 
 <!-- ==================================================== -->
 <!-- 配置自动代理事务,拦截系统所有服务方法 -->
 <!-- ==================================================== -->
 <aop:config>
  <aop:advisor
   pointcut="execution(* com.meyacom.core.*.biz.service.*.*(..))"
   advice-ref="txAdvice" />
 </aop:config>
 <tx:advice id="txAdvice">
  <tx:attributes>
   <tx:method name="insert*" />
   <tx:method name="save*" />
   <tx:method name="create*" />
   <tx:method name="add*" />
   <tx:method name="update*" />
   <tx:method name="modify*" />
   <tx:method name="delete*" />
   <tx:method name="remove*" />
   <tx:method name="import*" />
   <tx:method name="export*" />
   <tx:method name="execute*" />
   <tx:method name="*" read-only="true" />
  </tx:attributes>
 </tx:advice>


 <!-- ==================================================== -->
 <!-- 系统数据访问层公共模块配置文件 (包括:增、删、改、查) -->
 <!-- ==================================================== -->
 <bean id="dao" class="com.meyacom.core.common.integration.dao.impl.CMDAOImpl">
  <property name="sqlMapClient" ref="sqlMapClient" />
 </bean>

 <!-- ==================================================== -->
 <!-- 系统服务层公共模块配置文件 (包括:增、删、改、查) -->
 <!-- ==================================================== -->
 <bean id="service"
  class="com.meyacom.core.common.biz.service.impl.CMServiceImpl">
  <property name="dao" ref="dao" />
 </bean>
 
 
 <!-- ==================================================== -->
 <!-- 导入系统配置文件模块配置文件 (包括:增、删、改、查) -->
 <!-- ==================================================== -->
 <import resource="classpath:application-core.xml" />
 <!--这样写的好处是不会将所有的文件统一的放到applicationContext中,而是分开放。增强代码的可读-->
</beans>

第二个spring配置文件为:
application-core.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:dwr="http://www.directwebremoting.org/schema/spring-dwr"
 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.directwebremoting.org/schema/spring-dwr http://www.directwebremoting.org/schema/spring-dwr-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">


 <!-- ==================================================== -->
 <!-- 配置多资源文件 -->
 <!-- ==================================================== -->
 <bean id="propertyConfigurer"
  class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="locations">
   <list>
    <value>classpath:meyacom-jdbc.properties</value>
   </list>
  </property>
 </bean>


 <!-- ==================================================== -->
 <!-- 连接数据源的资源配置文件(连接地址、用户、密码、大小等) -->
 <!-- ==================================================== -->
 <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
  <property name="driverClassName" value="${datasource.driverClassName}"/>
  <property name="url" value="${datasource.url}"/>
  <property name="username" value="${datasource.username}"/>
  <property name="password" value="${datasource.password}"/>
  <property name="maxActive" value="${datasource.maxActive}" />
 </bean>
 <bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
  <property name="configLocation">
   <value>classpath:meyacom-sqlmap.xml</value>
  </property>
  <property name="dataSource" ref="dataSource"/>
  <property name="lobHandler" ref="lobHandler" />  
 </bean>
 <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
  <property name="dataSource" ref="dataSource" />
 </bean>
 <bean id="lobHandler" lazy-init="true"
  class="org.springframework.jdbc.support.lob.DefaultLobHandler" />
 
 
 <!-- ==================================================== -->
 <!-- 系统审查日志公共模块配置文件 (包括:增、删、改、查) -->
 <!-- ==================================================== -->
 <bean id="auditLogger" class="org.apache.log4j.Logger">
  <constructor-arg index="0" value="auditLogger" />
 </bean>

 
 <!-- ==================================================== -->
 <!-- 系统日志输出公共模块配置文件 (包括:增、删、改、查) -->
 <!-- ==================================================== -->
 <bean id="errorLogger" class="org.apache.log4j.Logger">
  <constructor-arg index="0" value="errorLogger" />
 </bean>
 
 
</beans>


7然后写基层的接口,和service,最后调用,基层接口和service我已经放到了spring的配置文件中。可以不用配置了。

0
0
分享到:
评论

相关推荐

    spring与ibatis整合集成实例

    以上就是 Spring 与 iBATIS 整合集成的主要步骤和知识点。通过这样的集成,可以利用 Spring 的强大功能管理和协调整个应用程序,同时利用 iBATIS 的灵活性处理数据库操作,实现高效的企业级应用开发。在实际项目中,...

    spring ibatis整合所需jar包

    1. 添加依赖:在`spring ibatis整合所需jar包`中,通常包含以下关键jar文件: - spring核心库:如spring-context、spring-beans、spring-aop等,用于Spring框架的基本功能。 - spring-jdbc和spring-tx:支持Spring...

    spring3.2与Ibatis整合

    7. **测试**:在Spring与iBatis整合后,可以使用Spring的`@Transactional`注解进行单元测试,确保每个方法都在独立的事务中执行,便于模拟各种数据状态并进行断言。 以上就是关于"Spring 3.2与iBatis整合"及"在...

    Spring+iBatis整合详解

    ### Spring与iBatis整合详解 #### 一、前言 在Java企业级应用开发中,Spring框架以其强大的依赖注入(DI)和面向切面编程(AOP)能力深受开发者喜爱,而iBatis(现更名为MyBatis)作为一款优秀的持久层框架,通过...

    Spring对IBatis的整合

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

    spring_ibatis整合案例

    在IT行业中,Spring框架与iBatis(现为MyBatis)的整合是常见的数据访问层解决方案,尤其在企业级应用开发中极为普遍。Spring是一个全面的Java应用程序框架,提供了依赖注入、AOP(面向切面编程)、MVC(模型-视图-...

    spring3 ibatis整合实例

    这个项目实例对于初学者来说是一份宝贵的资源,通过实际操作,可以更好地理解和掌握Spring3与iBatis的整合应用。记得仔细阅读项目文档,理解每一个配置和代码的作用,这将对你的编程技能提升大有裨益。

    Spring整合iBatis

    通过以上步骤,我们可以成功地将Spring与iBatis整合,实现高效、灵活的数据库操作。这种整合方式不仅提高了代码的可读性和可维护性,还能利用Spring的强大功能,使应用程序更加健壮。在实际开发中,可以根据项目需求...

    struts2 + spring + ibatis 整合例子

    通过Struts2、Spring和iBatis的整合,我们可以实现模型、视图和控制的分离,提高代码的可读性和可维护性。同时,Spring的DI和AOP特性使得对象管理更加灵活,iBatis则提供了方便的数据库操作方式。这样的组合在企业级...

    struts2、spring、ibatis整合实例

    struts2、spring、ibatis整合实例 struts2、spring、ibatis整合实例 struts2、spring、ibatis整合实例 struts2、spring、ibatis整合实例

    Spring+ibatis 保留ibatis事务的配置

    ### Spring与ibatis整合采用保留ibatis事务 #### 一、Spring与ibatis整合基础 Spring 和 ibatis(现称为 MyBatis)是两个非常流行的Java开发框架。Spring 是一个轻量级的Java应用开发框架,提供了依赖注入、面向切...

    Struts2+Spring+Ibatis整合

    "Struts2+Spring+iBatis整合"是一个典型的MVC(Model-View-Controller)架构实现,适用于构建大型企业级应用。下面将详细介绍这三个框架以及它们整合的关键点。 **Struts2** 是一个基于MVC设计模式的Web应用框架,...

    Spring 整合 iBATIS 文档 详解 加 源代码

    当Spring与iBATIS整合时,能够实现更高效、更便捷的数据访问。本文将深入探讨Spring整合iBATIS的过程,以及如何通过源代码理解和实践这一过程。 首先,了解iBATIS的基本概念。iBATIS是一个SQL映射框架,它将SQL语句...

    spring和ibatis整合

    在整合iBatis时,Spring会管理SqlSessionFactory和SqlSessionTemplate,这些都是与数据库交互的关键组件。 2. **配置文件**:在整合过程中,需要创建XML配置文件,如`sqlMapConfig.xml`来配置iBatis的基本设置,...

    Struts+Spring+Ibatis整合框架搭建配置文档

    ### Struts+Spring+Ibatis整合框架搭建配置详解 在当今复杂的软件开发环境中,整合不同的框架以构建高效、可维护的应用程序变得尤为重要。Struts、Spring与Ibatis(现称MyBatis)作为三个功能互补的Java框架,它们...

    Spring宠物店非常典型的展现了Spring和IBatis的整合

    总的来说,Spring宠物店项目是理解Spring与IBatis整合的理想实践案例。它展示了如何在Spring环境中配置和使用IBatis,以及如何利用Spring的事务管理和异常处理机制来构建健壮的应用程序。通过深入研究这个项目,...

    struts2+spring+ibatis整合项目实例

    `Struts+Spring+Ibatis整合框架搭建配置文档.doc`应该详细阐述了如何配置Spring以管理Struts2的Action和iBatis的数据源及SqlSession。 3. **iBatis**:iBatis是一个SQL映射框架,它将SQL语句与Java代码分离,使得...

    spring+struts2+ibatis整合的jar包

    当我们把Spring、Struts2和iBatis整合在一起时,可以构建出一个高效、模块化的Web应用。Spring作为整体的框架容器,负责管理所有的Bean,包括Struts2和iBatis的相关组件。Struts2处理HTTP请求,调用Spring管理的业务...

    spring+ibatis整合web所需ibatis包

    通过以上步骤,你可以成功地将Spring和iBatis整合在一起,实现高效且易于维护的企业级Web应用。在实际开发中,还要注意数据库连接池的选择,日志系统的配置,以及错误处理和异常封装,以提升整个系统的稳定性和健壮...

    Struts2+Spring+Ibatis整合的简单人事管理系统

    Struts2+Spring+Ibatis整合的简单人事管理系统 没分了,转载过来的,有需要的看看吧,我觉得不错~~

Global site tag (gtag.js) - Google Analytics