Spring整合Ibatis

javaibatisspring

  • 所需jar清单           ibatis-2.*.jar    *为任意版本,下同,ibatis工作包
              spring.jar
              spring-ibatis.jar  spring集成ibatis插件包
              commons-dbcp.jar   dbcp,pool为数据库连接池组件包
              commons-pool-1.5.2.jar
              commons-logging.jar
              ojdbc14.jar
  • 配置

    ibatis配置sql-map-config.xml

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 errorTracingEnabled="true"
  useStatementNamespaces="false"
  cacheModelsEnabled="true"
  enhancementEnabled="true"
  lazyLoadingEnabled="true"
  maxRequests="32"
  maxSessions="10"
  maxTransactions="5"
  />
<sqlMap resource="com/pb/pojo/Student.xml" />
</sqlMapConfig>

    spring配置applicationContext.xml

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="${jdbc.driverClassName}" />

<property name="url" value="${jdbc.url}" />

<property name="username" value="${jdbc.username}" />

<property name="password" value="${jdbc.password}" />

</bean>

<!-- 结束 -->

<!-- 加载属性文件 -->

<bean id="propertyConfigurer"

class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">

<property name="locations">

<list>

<value>

config/database.properties

</value>

</list>

</property>

</bean>

<!--结束  -->

<!-- ibatis配置 -->

<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">

<property name="configLocation" value="config/sql-map-config.xml">

</property>

<property name="dataSource" ref="dataSource" />

</bean>

<!-- 结束 -->

<!-- DAO配置 -->

<bean id="StudentDao" class="com.pb.dao.StudentDao">

<property name="sqlMapClient" ref="sqlMapClient" />

</bean>

<!-- 结束 -->

</beans>

database.properties配置

Java代码

jdbc.driverClassName=oracle.jdbc.driver.OracleDriver

jdbc.url=jdbc:oracle:thin:@localhost:1521:orcl

jdbc.username=test

jdbc.password=tiger

dbcp.initialSize=5

dbcp.maxActive =100

dbcp.maxIdle =5

dbcp.maxWait =50

dbcp.poolPreparedStatements =false

dbcp.defaultAutoCommit =false

Student.xml配置

Xml代码

<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE sqlMap

PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN"

"http://ibatis.apache.org/dtd/sql-map-2.dtd">

<sqlMap namespace="stu">

<resultMap class="com.pb.pojo.Student" id="Student">

<result property="sid" column="sid" javaType="java.lang.Integer" />

<result property="sname" column="sname" />

<result property="age" column="age" javaType="java.lang.Integer" />

<result property="tel" column="tel" />

<result property="address" column="address" />

<result property="cid" column="cid" javaType="java.lang.Integer" />

</resultMap>

<select id="findAllStudent" resultMap="Student">

select * from student

</select>

</sqlMap>

StudentDao.java

Java代码

package com.pb.dao;

import java.sql.SQLException;

import java.util.List;

import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;

import com.pb.pojo.Student;

@SuppressWarnings("unchecked")

public class StudentDao extends SqlMapClientDaoSupport {

public List<Student> findAllStudent() throws SQLException {

List<Student> result = getSqlMapClient().queryForList("findAllStudent");

System.out.println(result);

return result;

}

}

  • 测试

Java代码

public static void main(String[] args) throws Exception {

ClassPathXmlApplicationContext applicationContext = new ClassPathXmlApplicationContext("config/applicationContext.xml");

StudentDao studentDao = (StudentDao) applicationContext.getBean("StudentDao");

studentDao.findAllStudent();

}

最新文章

  1. RSA算法原理
  2. html5,视频的兼容
  3. 修改 jquery easyui 表单验证默认的样式
  4. BNUOJ 26579 Andrew the Ant
  5. android 数据库的升级与降级解决方案
  6. HIbernate java.lang.AbstractMethodError: com.microsoft.jdbc.base.BaseDatabaseMetaData.supportsGetGeneratedKeys()Z
  7. C# 多线程、结构体
  8. optimizer for eclipse--Eclipse优化,让你的Eclipse快来飞!
  9. HDU3572_Task Schedule(网络流最大流)
  10. js 性能优化整理之 高频优化
  11. 安装Apache遇到的一点问题
  12. JAVA中限制接口流量、并发的方法
  13. Spring中资源的加载ResourceLoader
  14. Go 初体验 - 错误与异常处理 - recover和panic
  15. React文档(二十一)协调
  16. JS处理日期&amp;字符串格式相互转换
  17. 自己搭建git服务器
  18. Apollo 10 — adminService 全量发布
  19. Python程序互斥体
  20. tomcat 配置域名访问应用

热门文章

  1. Viewport Resizer下载 谷歌前端自适应开发工具
  2. VHDL基本常识
  3. HTML5 INPUT新增属性
  4. Asp.net MVC Global.asax文件
  5. C语言文件函数
  6. php中使用linux命令四大步骤
  7. CentOS 6.3 配置 yum
  8. nodejs fs 模块的用途
  9. java常用集合类:Deque,ArrayList,HashMap,HashSet
  10. ASP.NET Web – 状态管理