因為項目需要需要使用IBATIS作為數據持久層,于是就著手搭建個簡單的IBATIS的開發環境,具體詳情如下:
1.需要:ibatis-2.3.0.677.jar(ibatis依賴包)和ojdbc14.jar(oracle驅動包)兩個包即可。目錄如下圖:
2.在classpath路徑下放:SqlMapConfig.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>
??? <transactionManager type="JDBC">
??? ?? <dataSource type="SIMPLE">
??? ???? <property name="JDBC.Driver" value="oracle.jdbc.OracleDriver"/>
??? ???? <property name="JDBC.ConnectionURL"
??? ??????????? value="jdbc:oracle:thin:@10.153.195.6:1523:ahcrmb"/>
??? ???? <property name="JDBC.Username" value="DBCONTACTKF"/>
??? ???? <property name="JDBC.Password" value="DBCONTACTKF"/>
??? ???? <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.PingEnabled" value="false" />
???????? <property name="Pool.PingConnectionsOlderThan" value="1" />
???????? <property name="Pool.PingConnectionsNotUsedFor" value="1" />
??? ????
??? ?? </dataSource>
??? ?</transactionManager>
???? <sqlMap resource="ibatismap/Comm.xml"/>
</sqlMapConfig>
?
3.在Comm.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="Comm">
??? <!-- test sql -->
??? <select id="test" resultClass="int">
????? SELECT 100 FROM DUAL
??? </select>
</sqlMap>
?
4.編寫測試用java代碼:
package cn.com.sitech.kf.ibatis;
import java.io.IOException;
import java.io.Reader;
import java.sql.SQLException;
import org.apache.log4j.Logger;
import com.ibatis.common.resources.Resources;
import com.ibatis.sqlmap.client.SqlMapClient;
import com.ibatis.sqlmap.client.SqlMapClientBuilder;
public class SqlMapClientConfig {
??? private static Logger log = Logger.getLogger(SqlMapClientConfig.class);
??? private static SqlMapClient sqlMap = null;
??? static {
??? ??? Reader reader = null;
??? ??? try {
??? ??? ??? String resource = "SqlMapConfig.xml";
??? ??? ??? reader = Resources.getResourceAsReader(resource);
??? ??? ??? sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader);
??? ??? } catch (Exception e) {
??? ??? ??? log.error("Error intializing SqlMapClientConfig ", e);
??? ??? ??? throw new RuntimeException(
??? ??? ??? ??? ??? "Error initializing BaseIbatisDao class. Cause: " + e);
??? ??? } finally {
??? ??? ??? if (reader != null) {
??? ??? ??? ??? try {
??? ??? ??? ??? ??? reader.close();
??? ??? ??? ??? } catch (IOException e) {
??? ??? ??? ??? ??? e.printStackTrace();
??? ??? ??? ??? }
??? ??? ??? }
??? ??? }
??? }
??? public static SqlMapClient getSqlMapInstance() {
??? ??? return sqlMap;
??? }
???
??? public static void main(String[] args) {
??? ??? Integer in;
??? ??? try {
??? ??? ??? in = (Integer) sqlMap.queryForObject("test");
??? ??? ??? System.out.println(in.toString());
??? ??? } catch (SQLException e) {
??? ??? ??? // TODO Auto-generated catch block
??? ??? ??? e.printStackTrace();
??? ??? }
??? }
}
運行即可完成;
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
