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

这里我们建立一个 web 工程测试。

2、导入相应的框架 jar 包

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

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

package com.test.bean;

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

private String name;

private String sex;

public String getName() {
return name;
}

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

public String getSex() {
return sex;
}

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

}

数据库对应建立表如下:


4、开发 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>

5、开发数据库连接工具类
这个类主要用于从配置文件读取 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;
}
}

6、编写具体的 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>

7、从工具中得到数据库操作对象,进行测试
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 核心配置文件中即可。

iBatis第二章:搭建一个简单的iBatis开发环境的更多相关文章

  1. 搭建一个完整的Java开发环境

    搭建一个完整的Java开发环境 作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,ecl ...

  2. Golang学习-第二篇 搭建一个简单的Go Web服务器

    序言 由于本人一直从事Web服务器端的程序开发,所以在学习Golang也想从Web这里开始学起,如果对Golang还不太清楚怎么搭建环境的朋友们可以参考我的上一篇文章 Golang的简单介绍及Wind ...

  3. 通过Jetty搭建一个简单的Servlet运行环境

    最近在做一些简单的Servlet开发的时候,感觉每次调试的时候都要发布到tomcat上很麻烦,把程序共享给同事也很麻烦,需要帮他设置本地的tomcat环境. 在网上找了找其他的Servlet运行环境, ...

  4. 如何成为游戏的生产者——第二章:如何开始你的编程(开发环境的搭建、C++语言适应)

    如何成为游戏的生产者--文章二章:怎样開始你的编程 小故事:上节说到我六年级打开了那本C语言的书,然后其实我还是没看懂.好像看懂了一些printf语句.之后遇到了史无前例的困难--怎么让代码执行起来. ...

  5. 菜鸟从零学编程(七)——搭建一个完整的Java开发环境

    作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,eclipse(或者myeclipse ...

  6. 菜鸟学Java(十二)——搭建一个完整的Java开发环境

    作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,eclipse(或者myeclipse ...

  7. ubuntu下搭建一个数据化处理的开发环境

    1.搭建matplotlib环境 构建matplotlib运行环境,需要满足相关软件环境. numpy库提供大数据集的数据的数据结构和数学方法.诸如元组.列表或字典等python的默认数据结构同样可以 ...

  8. Spring第二弹—–搭建与测试Spring的开发环境

    PS:Spring既可以使用在javaSE中,也可以使用在javaWeb中. 使用Spring需要的jar 下载spring(我下载的是2.5.6版本),然后进行解压缩,在解压目录中找到下面jar文件 ...

  9. 尝试自己搭一个简单的typescript运行环境

    开发typescript项目有一些现成的脚手架,比如:typescript-library-starter,它的配置齐全,更适合用在实际项目开发上.其实在学习阶段可以自己搭建一个简单的typescri ...

随机推荐

  1. C# 将object对象转换为实体对象

    C# 将object对象转换为实体对象.一共两种方法. 第一种方法,代码如下: /// <summary> /// 将object对象转换为实体对象 /// </summary> ...

  2. DevExpress控件安装破解和汉化使用教程

    这段时间因公司业务需要.net开发且需要用到DevExpress控件,我自己研究学习了一下,用的是visual studio(2013)和DevExpress(V14.1.4),VS2013的下载安装 ...

  3. ES6数组扩展运算符

    1 扩展运算符的运用 (1)复制数组 数组是复合的数据类型,直接复制的话,只是复制了指向底层数据机构的指针,而不是克隆一个全新的数组; const a1=[1,2]; const a2= a1; a2 ...

  4. SQL server 存储过程的建立和调用

     存储过程的建立和调用 --1.1准备测试需要的数据库:test,数据表:物料表,采购表if not exists (select * from master.dbo.sysdatabases whe ...

  5. Ambari自定义Service

    一.Ambari基本架构   img016.jpg Ambari Server 会读取 Stack 和 Service 的配置文件.当用 Ambari 创建服务的时候,Ambari Server 传送 ...

  6. mysql关联表更改表多个字段值

    关联表更改某一个字段值:更改部分数据,外层where条件控制更改记录的数量 BEGIN; " ; "; ROLLBACK; -- COMMIT; 关联表更改某一个字段值:更改全部记 ...

  7. Cesium3DTileset示例

    3D Tiles是Cesium中很核心的一部分,尤其是用来实现大范围的模型场景数据的加载应用. 三维倾斜模型.人工建模.BIM模型等等,都可以转换成3D Tiles,进而为我们所用. 从Cesium1 ...

  8. dubbo-springboot入门级demo

    1. dubbo-springboot入门级demo 1.1. 前言 最后一个做运维的朋友和我提起,他们公司想做个dubbo灰度发布的功能,而这个功能落到了他头上.在我的印象里,dubbo应该可以通过 ...

  9. c语言-自己写的库

    一.俗话说算法是程序的灵魂,这下面本人写了一部分常用算法,欢迎大家使用,并提出批评和指正,当然也可以改进或者添加. 1.这是自己实现的算法库头文件 #ifndef _INC_ALGORITHM #de ...

  10. 【深度学习篇】--Windows 64下tensorflow-gpu安装到应用

    一.前述 一直以为自己的笔记本不支持tensflow-gpu的运行,结果每次运行模型都要好久.偶然间一个想法,想试试自己的笔记本,结果竟然神奇的发现能用GPU.于是分享一下安装步骤. 二.具体 因为版 ...