iBatis第二章:搭建一个简单的iBatis开发环境

使用 iBatis 框架开发的基本步骤以下:
一、新建项目(iBatis是持久层框架,能够运用到java工程或者web工程均可以)

这里咱们创建一个 web 工程测试。java

二、导入相应的框架 jar 包

须要导入数据库对应的驱动包:这里是链接 mysql,用mysql-connection-java-3.1.13-bin.jar
同时须要导入 iBatis 框架包:ibatis-conmmon-2.jar、 ibatis-sqlmap-2.jarmysql

三、开发项目中的实例模型(假设数据库对应的表已经建好)

package com.test.bean;web

/**
* @author Administrator
* Student 实体类
*/
public class Student {

private String name;

private String sex;sql

public String getName() {
return name;
}数据库

public void setName(String name) {
this.name = name;
}app

public String getSex() {
return sex;
}框架

public void setSex(String sex) {
this.sex = sex;
}工具

}测试

数据库对应创建表以下:ui


四、开发 iBatis 数据库配置文件
在项目中新建一个 iBatis 的核心配置文件,器内容以下:
<?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>

<!-- 配置事务管理 -->
<transactionManager type="JDBC">
<!-- 配置数据源 -->
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="com.mysql.jdbc.Driver"/>
<property name="JDBC.ConnectionURL" value="jdbc:mysql://localhost:3306/ibatis"/>
<property name="JDBC.Username" value="root"/>
<property name="JDBC.Password" value="123456"/>
</dataSource>
</transactionManager>

<!-- 引用具体的 sql 配置文件 -->
<sqlMap resource="config/sqlmap-mapping-student.xml"/>

</sqlMapConfig>

五、开发数据库链接工具类
这个类主要用于从配置文件读取 iBatis 的配置,提供操做数据源的对象。
package com.test.dbutil;
import java.io.Reader;
import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;

/**
* @author Administrator
* 数据源链接工具类
*/
public class DBUtils {
private static SqlMapClient sqlMapClient = null;
static{
try {
//获得数据源配置文件的信息
Reader reader = Resources.getResourceAsReader("sqlmap-config.xml");
//SqlMapClient是 iBatis 操做数据库的接口,一般CRUD都是经过它来完成
sqlMapClient = SqlMapClientBuilder.buildSqlMapClient(reader);
//关闭 reader 流
reader.close();
} catch (Exception e) {
System.out.println("获取数据源出错:"+e.getMessage());
}
}
/**
* 获得操做数据库的实例
* @return
*/
public static SqlMapClient getInstance(){
return sqlMapClient;
}
}

六、编写具体的 sql 配置文件
iBatis通常将具体的 sql 写在单独的配置文件中,在 iBatis 核心配置文件中进行引入便可。下面是一个简单的示例:
sqlmap-mapping-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>
<select id="my_queryForMap" resultClass="com.test.bean.Student">
select name,sex from t_stu
</select>
</sqlMap>

七、从工具中获得数据库操做对象,进行测试
import java.sql.SQLException;
import java.util.List;

import com.ibatis.sqlmap.client.SqlMapClient;
import com.test.bean.Student;
public class TestIbatis {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
SqlMapClient sqlMapClient = DBUtils.getInstance();
try {
//这里的my_queryForMap对应sqlmap-mapping-student.xml中的<select>标签中的id,后面能够传递一
//个参数做为查询条件,这里咱们因为查询所有,因此没有传递。具体后面介绍。
List<Student> stuList = sqlMapClient.queryForList("my_queryForMap", null);
for(Student s:stuList){
System.out.println(s.getName());
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
这里须要说明一下:在须要使用iBatis与数据库交互的地方,咱们只要获得了sqlMapClient对象,就有了与数据库打交道的工具,这个对象提供了一系列操做数据的方法,后面咱们着重介绍。


下面提供一个项目的总体结构图。后期咱们开发不一样的模型时,值须要将不一样的模型分别创建一个 sql 配置文件,将与其相关的sql 配置到里面,并引入到 iBatis 核心配置文件中便可。

相关文章
相关标签/搜索