1. 项目中导入ibatis相关jar包
ibatis-2.3.0.677.jar
ojdbc14_g.jar
ojdbc14.jar
下载地址: http://download.csdn.net/detail/gf05011/4036075
2.项目的scr目录下面建立两个文件
sqlMapConfig.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 cacheModelsEnabled="true" enhancementEnabled="true"
lazyLoadingEnabled="true" errorTracingEnabled="true" maxRequests="32"
maxSessions="10" maxTransactions="5" useStatementNamespaces="false" />
<!-- 配置数据源 -->
<transactionManager type="JDBC">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="oracle.jdbc.driver.OracleDriver" />
<property name="JDBC.ConnectionURL" value="jdbc:oracle:thin:@192.168.0.19:1521:orcl" />
<property name="JDBC.Username" value="base" />
<property name="JDBC.Password" value="base" />
<!-- 以上四个是必须的 -->
<property name="Pool.MaximumActiveConnections" value="10" />
<property name="Pool.MaximumIdleConnections" value="5" />
<property name="Pool.MaximumCheckoutTime" value="120000" />
<property name="Pool.TimeToWait" value="500" />
<property name="Pool.PingQuery" value="select 1 from sample" />
<property name="Pool.PingEnabled" value="false" />
<property name="Pool.PingConnectionsOlderThan" value="1" />
<property name="Pool.PingConnectionsNotUsedFor" value="1" />
</dataSource>
</transactionManager>
<!-- 载入下面的sqlmap文件,路径信息相对于本文件 -->
<sqlMap resource="com/config/sqlmaps/Test.xml" />
</sqlMapConfig >
Test.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="Test">
<cacheModel id="testCache" type="LRU">
<flushInterval hours="24"/>
<flushOnExecute statement="insertTest"/>
<flushOnExecute statement="updateTest"/>
<property name="size" value="1000" />
</cacheModel>
<typeAlias alias="Test" type="com.htjs.test.Test"/>
<resultMap id="TestResult" class="Test">
<result property="username" column="test_username" />
<result property="password" column="test_password" />
</resultMap>
<select id="getAllTest" resultClass="Test" parameterClass="string">
SELECT * FROM test
</select>
<select id="selectTestByUsername" parameterClass="string" resultClass="Test">
select
username,
password
from test
where username = #username#
</select>
<insert id="insertTest" parameterClass="Test">
insert into test (
username,
password)
values (
#username#, #password#
)
</insert>
<update id="updateTest" parameterClass="Test">
update test set
password = #password#,username = #username#
where username = #username#
</update>
<delete id="deleteTestByPassword" parameterClass="string">
delete test where password = #password#
</delete>
</sqlMap>
3.添加测试类
public class testIbatis {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("开始初始化sqlmap对象!");
String resource = "SqlMapConfig.xml" ;
com.ibatis.sqlmap.client.SqlMapClient sqlMap = null ;
try
{
java.io.Reader reader = com.ibatis.common.resources.Resources.getResourceAsReader(resource);
sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);
}
catch(Exception e)
{
e.printStackTrace();
}
List list = null;
try
{
//1插入记录
/*
Test test = new Test();
test.setUsername("lili");
test.setPassword("123456");
sqlMap.insert("insertTest",test);
System.out.println("插入记录完成!");
*/
//2修改记录
/*
Test test = new Test();
test.setUsername("lili");
test.setPassword("ccc");
sqlMap.update("updateTest",test);
System.out.println("修改记录完成!");
*/
//3删除记录
/*
sqlMap.delete("deleteTestByPassword","ccc");
System.out.println("删除记录完成!");
*/
//4查询所有记录
System.out.println("开始查询记录!");
list= sqlMap.queryForList("getAllTest");
System.out.println("记录数量: "+list.size());
}
catch (SQLException e)
{
e.printStackTrace();
}
}
}