iBatis第二章:搭建一个简单的iBatis开发环境
使用 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开发环境的更多相关文章
- 搭建一个完整的Java开发环境
搭建一个完整的Java开发环境 作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,ecl ...
- Golang学习-第二篇 搭建一个简单的Go Web服务器
序言 由于本人一直从事Web服务器端的程序开发,所以在学习Golang也想从Web这里开始学起,如果对Golang还不太清楚怎么搭建环境的朋友们可以参考我的上一篇文章 Golang的简单介绍及Wind ...
- 通过Jetty搭建一个简单的Servlet运行环境
最近在做一些简单的Servlet开发的时候,感觉每次调试的时候都要发布到tomcat上很麻烦,把程序共享给同事也很麻烦,需要帮他设置本地的tomcat环境. 在网上找了找其他的Servlet运行环境, ...
- 如何成为游戏的生产者——第二章:如何开始你的编程(开发环境的搭建、C++语言适应)
如何成为游戏的生产者--文章二章:怎样開始你的编程 小故事:上节说到我六年级打开了那本C语言的书,然后其实我还是没看懂.好像看懂了一些printf语句.之后遇到了史无前例的困难--怎么让代码执行起来. ...
- 菜鸟从零学编程(七)——搭建一个完整的Java开发环境
作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,eclipse(或者myeclipse ...
- 菜鸟学Java(十二)——搭建一个完整的Java开发环境
作为一个Java程序员,配置一个java开发环境是必备的技能,今天给广大菜鸟初学者补上一课.环境的配置,大概就分三个1,JDK 2,Tomcat(或者其他的)3,eclipse(或者myeclipse ...
- ubuntu下搭建一个数据化处理的开发环境
1.搭建matplotlib环境 构建matplotlib运行环境,需要满足相关软件环境. numpy库提供大数据集的数据的数据结构和数学方法.诸如元组.列表或字典等python的默认数据结构同样可以 ...
- Spring第二弹—–搭建与测试Spring的开发环境
PS:Spring既可以使用在javaSE中,也可以使用在javaWeb中. 使用Spring需要的jar 下载spring(我下载的是2.5.6版本),然后进行解压缩,在解压目录中找到下面jar文件 ...
- 尝试自己搭一个简单的typescript运行环境
开发typescript项目有一些现成的脚手架,比如:typescript-library-starter,它的配置齐全,更适合用在实际项目开发上.其实在学习阶段可以自己搭建一个简单的typescri ...
随机推荐
- Git思维导图
EBay全程问了我关于Git的原理, 各种命令行:平常依赖Idea的图形化太严重了,今天仔细总结一下常用的工具: Git学习的链接: https://book.git-scm.com/ http: ...
- 将SQL Server查询导出本地excel(mail发送)
1.将数据库中查询的表格导出到指定的路径,首先启用.xp_cmdshell,上一篇随笔有写如何开启.xp_cmdshell. DECLARE @sql NVARCHAR(4000) --定义变 ...
- 联想官方OEM分区制作
今天,朋友买了一个新的联想电脑,自带出厂系统.进入PE后发现居然有联想官方的OEM分区,于是直接拷贝过来,然后装在另一个电脑里可以正常使用,这里给大家分享一下. 工程下载: 链接:ht ...
- Windows Server 2016-OU组织单位日常操作
技术无所谓贵贱,既然曾经做过就总该是要留下点什么,毕竟做技术这些年给我们留下太多太多的成长经历,总有人问这些已经很皮毛了为什么还要写,其实没那么多花哨理由,就是想着做或者不做这一块总是要对过往做个简单 ...
- requestAnimationFrame 知多少?
在Web应用中,实现动画效果的方法比较多,JavaScript 中可以通过定时器 setTimeout 来实现,css3 可以使用 transition 和 animation 来实现,html5 中 ...
- hadoop 笔记(hive)
//**********************************//安装配置1. 修改配置文件 1.1 在conf文件夹下 touch hive-site.xml <configurat ...
- Java 枚举类详解
1. 枚举类定义 在某些情况下,一个类的对象是有限而且固定的,比如季节类,它只有4个对象,这种实例有限而且固定的类,在Java里被称为枚举类. 2. 早期实现枚举的方式 public static f ...
- IM开发者的零基础通信技术入门(二):通信交换技术的百年发展史(下)
1.系列文章引言 1.1 适合谁来阅读? 本系列文章尽量使用最浅显易懂的文字.图片来组织内容,力求通信技术零基础的人群也能看懂.但个人建议,至少稍微了解过网络通信方面的知识后再看,会更有收获.如果您大 ...
- Javascript高级编程学习笔记(96)—— WebGL(2) 类型化视图
类型化视图 类型化视图一般也被认为是一种类型化数组. 因为其元素必须是某种特定的数据类型,类型化视图都继承自 Dataview Int8Array: 表示8位二补整数(即二进制补数) Uint8Arr ...
- Linux文件系统类型和区别
文件系统EXT3,EXT4和XFS的区别: 1. EXT3 (1)最多只能支持32TB的文件系统和2TB的文件,实际只能容纳2TB的文件系统和16GB的文件 (2)Ext3目前只支持32000个子目录 ...