接着iBATIS的入门实例来说,ibatis与Spring的整合其实跟hibernate与Spring的整合大同小异,都是一个模子的,回想hibernate整合spring:主要是在spring中配置,需要数据源,需要hibernate配置文件,需要sessionFactory。iBATIS走的路线完全一致,直接看配置就明白
先是src/sqlmap.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
"http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<settings cacheModelsEnabled="true" enhancementEnabled="true" lazyLoadingEnabled="true" maxRequests="32"
maxSessions="10" maxTransactions="5" useStatementNamespaces="true" />
<sqlMap resource="com/javacrazyer/myweb/ibatis/SysDeliverCompany.xml" />
<sqlMap resource="com/javacrazyer/myweb/ibatis/SysArea.xml" />
<sqlMap resource="com/javacrazyer/myweb/ibatis/SmsActivityExpense.xml" />
<sqlMap resource="com/javacrazyer/myweb/ibatis/deptMgr.xml" />
<sqlMap resource="com/javacrazyer/myweb/ibatis/userMgr.xml" />
<sqlMap resource="com/javacrazyer/myweb/ibatis/SysCost.xml" />
<sqlMap resource="com/javacrazyer/myweb/ibatis/orders.xml" />
<sqlMap resource="com/javacrazyer/myweb/ibatis/privilege.xml" />
<sqlMap resource="com/javacrazyer/myweb/ibatis/app.xml" />
</sqlMapConfig>
很显然这个配置里没有配数据源,配置到spring即可
applictionContext.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:p="http://www.springframework.org/schema/p"
xmlns:context="http://www.springframework.org/schema/context"
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-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-3.0.xsd">
<!--数据源,用的是spring容器自带的数据源,-->
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName">
<value>com.microsoft.sqlserver.jdbc.SQLServerDriver</value>
</property>
<property name="url">
<value>jdbc:sqlserver://localhost:1433;databaseName=dbName
</value>
</property>
<property name="username">
<value>sa</value>
</property>
<property name="password">
<value>123</value>
</property>
<property name="connectionProperties">
<props>
<!--
<prop key="useUnicode">true</prop>
<prop key="characterEncoding">utf-8</prop>
连接池中连接用完时,新的请求等待时间,毫秒,-1表示无限等待
<prop key="maxWait">1000</prop>
-->
<!-- 是否清理空闲连接 -->
<prop key="removeAbandoned">true</prop>
<!-- 活动连接的最大空闲时间,秒 -->
<prop key="removeAbandonedTimeout">60</prop>
<!-- 初始连接数量 -->
<prop key="initialSize">3</prop>
<!-- 连接池支持的最大连接数,0表示无限制 -->
<prop key="maxActive">50</prop>
<!-- 连接池中最多可空闲maxIdle个连接,0表示无限制 -->
<prop key="maxIdle">10</prop>
<!-- 连接池中最小空闲maxIdle个连接 -->
<prop key="minIdle">2</prop>
</props>
</property>
</bean>
<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation" value="classpath:sqlmap.xml" />
<!-- 从IBATIS基本示例可以看到,sqlmap.xml中是应该配置dataSource的,不过没配置也没关系,可以在spring中继续配 -->
<property name="dataSource" ref="dataSource" />
<!--
<property name="useTransactionAwareDataSource"
value="true"></property>
-->
</bean>
<!--根据sqlMapClien创建一个SqlMapClient模版类-->
<!-- 那么这个sqlMapClientTemplate就相当于sessionFactory获取的session -->
<bean id="sqlMapClientTemplate" class="org.springframework.orm.ibatis.SqlMapClientTemplate">
<property name="sqlMapClient">
<ref bean="sqlMapClient" />
</property>
</bean>
</beans>
然后在需要的类写上个private SqlMapClientTemplate sqlMapClientTemplate 当做字段并提供SETTER方法,之后在applicationContext.xml中注入sqlMapClientTemplate即可直接使用了,具体的方法与入门实例中sqlMapper的方
法一样
相关推荐
通过编写单元测试或集成测试来验证ibatis与Spring的整合是否成功。 #### 五、总结 通过以上步骤,我们可以将ibatis与Spring框架很好地整合在一起,利用Spring的强大功能来简化ibatis的配置和管理。这种整合方式...
标题 "ibatis与spring整合实例(附源码)" 暗示了本文将探讨如何在实际项目中结合使用这两个流行的Java开发框架——iBatis和Spring。iBatis是一个SQL映射框架,它允许开发者将SQL语句直接写在配置文件中,而Spring则...
### iBatis与Spring整合的例子 #### 一、概述 在现代软件开发中,整合不同的技术框架是非常常见的需求。本文将详细介绍如何将iBatis(现称为MyBatis)与Spring框架进行整合,并通过一个具体的例子来展示整合过程中...
iBatis和Spring整合 iBatis和Spring整合
在IT领域,iBATIS和Spring的整合是一个常见的实践,特别是在构建基于Java的企业级应用时。iBATIS是一个优秀的持久层框架,它简化了数据库操作,而Spring则是一个全面的框架,提供了依赖注入、事务管理等多种功能。接...
通过以上步骤,iBATIS与Spring的整合完成,实现了DAO层的数据库操作以及声明式事务管理。这种方式极大地提高了代码的可维护性和事务处理的灵活性。在实际开发中,根据项目需求,还可以进一步配置如异常处理、缓存...
7. **测试与调试**:整合完成后,可以通过单元测试或集成测试验证Ibatis 和 Spring 是否能正常交互,确保SQL执行、事务处理和对象映射等功能都按预期工作。 通过这样的整合,我们可以充分利用Ibatis的灵活性和...
Struts2+iBATIS+Spring整合是Java Web开发中一种常见的技术栈组合,这三种框架协同工作,可以构建出高效、灵活的企业级应用。Struts2作为MVC(Model-View-Controller)架构的一部分,主要负责处理HTTP请求,管理前端...
- Spring可以管理SqlSessionTemplate或SqlSessionDaoSupport,它们是iBatis与Spring整合的关键类,提供数据库操作的方法。 - 将iBatis的Mapper接口定义为Spring的Bean,通过@Autowired注解自动注入到需要的地方。 ...
Spring还包含一个强大的数据访问抽象层,可以方便地与各种持久层技术(如Ibatis)集成。 Struts是经典的MVC框架,它定义了请求的生命周期,以及模型、视图和控制器之间的交互。当用户发送请求时,Struts拦截请求,...
"Ibatis+Spring整合"是指将这两个框架集成到同一个项目中,以利用它们的优势互补,实现更高效、更灵活的数据访问层。下面我们将详细探讨这个整合过程中的关键知识点。 首先,集成Ibatis和Spring的第一步是引入相关...
Ibatis和Spring整合例子,实现增删改查功能.
Spring还提供了大量的模块,如Spring MVC、Spring JDBC、Spring ORM,可以与Struts2和iBatis无缝集成。 整合这三个框架,开发者可以利用Struts2进行前端请求的路由和控制,iBatis处理数据库交互,Spring负责对象...
首先,iBATIS与Spring的集成主要通过Spring的`SqlSessionFactoryBean`实现。`SqlSessionFactoryBean`是Spring提供的一个工厂类,用于创建`SqlSessionFactory`,这是iBATIS的核心对象,它负责管理和创建`SqlSession`...
《iBATIS-SqlMaps-2_cn.rar》是一款关于iBATIS框架的中文教程资源,主要针对想要深入了解和使用iBATIS与Spring集成的初学者。这个压缩包包含了一个PDF文档,即《iBATIS-SqlMaps-2_cn.pdf》,它是iBATIS SQL Maps 2的...
以上就是 Spring 与 iBATIS 整合集成的主要步骤和知识点。通过这样的集成,可以利用 Spring 的强大功能管理和协调整个应用程序,同时利用 iBATIS 的灵活性处理数据库操作,实现高效的企业级应用开发。在实际项目中,...
本篇文章将深入探讨如何将Ibatis与Spring进行整合,通过一个具体的"ibatis_spring整合Demo"来详细阐述这一过程。 Ibatis是一个轻量级的Java持久层框架,它提供了一种灵活的SQL映射机制,允许开发者编写动态SQL,...