您好,登錄后才能下訂單哦!
小編給大家分享一下iBATIS SQLMap如何配置,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
iBATIS的SQLMap配置文件是XML形式,一般叫SqlMapConfig.xml,如下:
Xml代碼
﹤?xml version="1.0" encoding="UTF-8"?﹥ ﹤!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0/" "http://www.ibatis.com/dtd/sql-map-config-2.dtd"﹥ ﹤sqlMapConfig﹥ ﹤!--settings配置是可選的,用來控制sqlMapping的詳細配置,主要是事務處理。參數(shù)具體含義請參考ibatis開發(fā)指南--﹥ ﹤settings cacheModelsEnabled="true" enhancementEnabled="true" lazyLoadingEnabled="true" errorTracingEnabled="true" maxRequests="32" maxSessions="10" maxTransactions="5" useStatementNamespaces="false" /﹥ ﹤!--使用SimpleDataSource配置數(shù)據(jù)源,DataSource的iBATIS實現(xiàn):SimpleDataSource類,Jakarta DBCP(Commons),和可通過JNDI上下文查找的DataSource(即應用服務器中的DataSource)--﹥ ﹤transactionManager type="JDBC"﹥ ﹤dataSource type="SIMPLE"﹥ ﹤property name="JDBC.Driver" value="com.mysql.jdbc.Driver" /﹥ ﹤property name="JDBC.ConnectionURL" value="jdbc:mysql://127.0.0.1:3306/jpetstore?" /﹥ ﹤property name="JDBC.Username" value="root" /﹥ ﹤property name="JDBC.Password" value="" /﹥ ﹤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 ACCOUNT" /﹥ ﹤property name="Pool.PingEnabled" value="false" /﹥ ﹤property name="Pool.PingConnectionsOlderThan" value="1" /﹥ ﹤property name="Pool.PingConnectionsNotUsedFor" value="1" /﹥ ﹤/dataSource﹥ ﹤/transactionManager﹥ ﹤!--引入所有的SQL Map配置文件,這里的路徑是classpath的相對路徑,例如下面的配置說明引入Account.xml,位置在com/quqworld/test/ibatis包內(nèi)--﹥ ﹤sqlMap resource="com/quqworld/test/ibatis/Account.xml" /﹥ ﹤/sqlMapConfig﹥
接下來是iBATIS SQLMap映射文件Account.xml:
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="Account"﹥ ﹤!--在SQL Map框架中,Result Map是極其重要的組件。在執(zhí)行查詢Mapped Statement時,resultMap負責將結(jié)果集的列值映射成Java Bean的屬性值。--﹥ ﹤resultMap id="result" class="org.springframework.samples.jpetstore.domain.Account"﹥ ﹤result property="username" column="userid" columnIndex="1" /﹥ ﹤result property="email" column="email" columnIndex="2" /﹥ ﹤result property="firstName" column="firstname" columnIndex="3" /﹥ ﹤result property="lastName" column="lastname" columnIndex="4" /﹥ ﹤result property="status" column="status" columnIndex="5" /﹥ ﹤result property="address1" column="addr1" columnIndex="6" /﹥ ﹤result property="address2" column="addr2" columnIndex="7" /﹥ ﹤result property="city" column="city" columnIndex="8" /﹥ ﹤result property="state" column="state" columnIndex="9" /﹥ ﹤result property="zip" column="zip" columnIndex="10" /﹥ ﹤result property="country" column="country" columnIndex="11" /﹥ ﹤result property="phone" column="phone" columnIndex="12" /﹥﹤/resultMap﹥ ﹤select id="getAllAccountByUserid" resultMap="result"﹥ select account.userid, account.email, account.firstname, account.lastname, account.status, account.addr1, account.addr2, account.city, account.state, account.zip, account.country, account.phone from account where account.userid=#value# ﹤/select﹥ ﹤/sqlMap﹥
下面是iBATIS SQLMap的Java代碼:
Java代碼
try { String resource = "com/quqworld/test/ibatis/SqlMapConfig.xml"; Reader reader = Resources.getResourceAsReader(resource); SqlMapClient sqlMap = SqlMapClientBuilder.buildSqlMapClient(reader); Object object = sqlMap.queryForObject( "getAllAccountByUserid", "ACID",new Account()); System.out.println("select result: " +object); } catch (Exception e) { e.printStackTrace(); }
iBATIS SQLMap的配置Demo就向你介紹到這里,希望對你有所幫助。
以上是“iBATIS SQLMap如何配置”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學習更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。