ibatis 是一种“半自动化”的ORM实现。特点是小巧,上手快 下面是开发一个简单的流程:
在oracle中创建test 表:
第一步:在src目录下创建iBatis必须的配置文件sqlmap-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<!--
<settings cacheModelsEnabled="false"
enhancementEnabled="true"
lazyLoadingEnabled="true"
errorTracingEnabled="true"
maxRequests="100"
maxSessions="100"
maxTransactions="20"
useStatementNamespaces="true"
/>
<typeHandler javaType="object" callback="map.OracleObjectTypeHandler"/>
-->
<transactionManager type="JDBC">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="oracle.jdbc.driver.OracleDriver"/>
<property name="JDBC.ConnectionURL" value="jdbc:oracle:thin:@dyl:1521:orcl"/>
<property name="JDBC.Username" value="scott"/>
<property name="JDBC.Password" value="dyl"/>
</dataSource>
</transactionManager>
<sqlMap resource="map/test.xml"/>
</sqlMapConfig>
第二步:创建一个
O/R Mapping的Java对象
package com.zaizao.dyl;
public class test {
private String username;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
private String password;
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
第三步:创建
关联的xml配置文件 test.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 namespace="Test">
<select id="getTest" parameterClass="java.lang.String" resultClass="com.zaizao.dyl.test">
select * from test where username = #value#
</select>
<insert id="createTest" parameterClass="com.zaizao.dyl.test">
insert into test (username, password)
values ( #username#, #password# )
</insert>
</sqlMap>
第四步:编写测试类
public class DoTest {
/**
* @param args
*/
public static void main(String[] args) {
SqlMapClient sqlMap=null;
try {
Reader reder=Resources.getResourceAsReader("sqlmap-config.xml");//读取配置文件
sqlMap=SqlMapClientBuilder.buildSqlMapClient(reder);//获取sqlmap操作对象
test t=(test) sqlMap.queryForObject("getTest","张三");
System.out.println(t.getPassword()+"UUUUUUUUUUUUUUUUUUUUUUU");
//test t=new test();
// t.setUsername("micheal");
// t.setPassword("1234");
// sqlMap.insert("createTest", t);
} catch (IOException e) {
e.printStackTrace();
}
catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
运行时把两个配置文件和iBatis的3个jar包放到classpath中