iBaits中SqlMapClientTemplate怎么用

這篇文章主要介紹iBaits中SqlMapClientTemplate怎么用,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

10年積累的成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先建設(shè)網(wǎng)站后付款的網(wǎng)站建設(shè)流程,更有扶溝免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

Apache iBatis(現(xiàn)已遷至Google Code下發(fā)展,更名為MyBatis)是當(dāng)前IT項(xiàng)目中使用很廣泛的一個(gè)半自動(dòng)ORM框架,區(qū)別于Hibernate之類的全自動(dòng)框架,iBatis對數(shù)據(jù)庫的操作擁有更加靈活的控制,對于那些經(jīng)常需要調(diào)用本地?cái)?shù)據(jù)庫函數(shù)自定義SQL語句,或是喜歡自己優(yōu)化SQL執(zhí)行效率的開發(fā)者來說,iBatis是一個(gè)非常不錯(cuò)的選擇。而得到廣泛應(yīng)用的開源企業(yè)架構(gòu)SpringFramework,也很好的將其進(jìn)行了集成,使得iBatis在 SpringFramework中的使用更加便利、快捷。開發(fā)者所要做的就是繼承SpringFramework中提供的 SqlMapClientDaoSupport類即可。下面,我將自己的使用經(jīng)驗(yàn)與大家分享一下:

1、SqlMapClientFactoryBean 的裝配

SqlMapClientFactoryBean是SqlMapClientTemplate使用的基礎(chǔ),如果在

SpringFramework應(yīng)用中沒有裝配SqlMapClientFactoryBean,那么SqlMapClientTemplate將不可用,報(bào)空指針錯(cuò)誤。

<bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">         <property name="configLocation" value="/WEB-INF/sqlmap-config.xml"/>          <property name="dataSource" ref="dataSource"/>          <property name="lobHandler" ref="oracleLobHandler"/>      bean>

2、繼承使用SqlMapClientDaoSupport類

聲明Java類:

   ......         import org.springframework.orm.ibatis.support.SqlMapClientDaoSupport;         ......         public class ReportDAOImpl extends SqlMapClientDaoSupport {             ......         }         SpringFramework配置文件中裝配Java類:         <BEAN ID=< span>"reportDao" class="com.test.dao.ReportDAOImpl">             <PROPERTY NAME=< span>"sqlMapClient" ref="sqlMapClient"/>

SpringFramework配置文件中裝配Java類:

3、使用SqlMapClientTemplate查詢

Java代碼:

當(dāng)執(zhí)行沒有參數(shù)的查詢時(shí):

List result = getSqlMapClientTemplate().queryForList("TestSpace.qryTest");

"TestSpace"為iBatis SqlMap文件的命名空間;"qryTest"為iBatis SqlMap的查詢方法id

當(dāng)按照主鍵獲取某條記錄信息時(shí):

Long id = new Long("2");        Object resultObj = getSqlMapClientTemplate().queryForObject("TestSpace.getTest", id);

當(dāng)按照某些條件查詢時(shí):

ObjectA objA = new ObjectA();         objA.setParam1("test1");         objA.setParam2("test2");         ......         List result = getSqlMapClientTemplate().queryForList("TestSpace.qryTestByParam", objA);

如果需要取4~40條數(shù)據(jù):

List result = getSqlMapClientTemplate().queryForList("TestSpace.qryTestByParam", objA, 4, 40);

也可以返回Map

Map result = getSqlMapClientTemplate().queryForMap("TestSpace.qryTestByParam", objA, "MapKey");

4、使用SqlMapClientTemplate添加數(shù)據(jù)

Java代碼:

ObjectA objA = new ObjectA();
objA.setParam1("test1");        objA.setParam2("test2");        ......        getSqlMapClientTemplate().insert("TestSpace.insertTest", objA);

5、使用SqlMapClientTemplate更新數(shù)據(jù)

Java代碼:

ObjectA objA = new ObjectA();         objA.setParam1("test1");         objA.setParam2("test2");         ......         getSqlMapClientTemplate().update("TestSpace.updateTest", objA);

更新前20條記錄:

Java代碼

getSqlMapClientTemplate().update("TestSpace.updateTest", objA, 20);

6、使用SqlMapClientTemplate刪除數(shù)據(jù)

Java代碼:

Long id = new Long("2");        getSqlMapClientTemplate().delete("TestSpace.deleteTest", id);

以上是“iBaits中SqlMapClientTemplate怎么用”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

本文題目:iBaits中SqlMapClientTemplate怎么用
URL分享:http://muchs.cn/article26/ihgojg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、網(wǎng)站設(shè)計(jì)公司、定制網(wǎng)站、建站公司、動(dòng)態(tài)網(wǎng)站、外貿(mào)建站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)