溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

怎么自動(dòng)生成ibatis映射文件

發(fā)布時(shí)間:2021-07-14 16:12:50 來(lái)源:億速云 閱讀:186 作者:chen 欄目:編程語(yǔ)言

本篇內(nèi)容主要講解“怎么自動(dòng)生成ibatis映射文件”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“怎么自動(dòng)生成ibatis映射文件”吧!

使用了一個(gè)多月的iBatis,大體覺(jué)得挺不錯(cuò).速度靈活性都還可以.比起以前的完全手動(dòng)編程,節(jié)約了大量的時(shí)間.但是,隨著使用次數(shù)的增多,一個(gè)問(wèn)題很快就暴露出來(lái),那就是iBatis映射文件寫(xiě)起來(lái)太煩了,都是重復(fù)單調(diào)的打字.

于是就寫(xiě)了一個(gè)小程序,來(lái)做這個(gè)iBatis映射文件的工作.

先說(shuō)一下原理:iBatis中的映射是很有規(guī)律的,最重要的是做好數(shù)據(jù)庫(kù)字段到j(luò)avabean屬性的映射,而其他的地方改動(dòng)很少. 這就好辦了,我們采用模板,把變的部分抽取出來(lái),把不變的部分直接寫(xiě)到模板中.

在程序中提取javabean類(lèi)的屬性,進(jìn)行分析,做一個(gè)javabean屬性和數(shù)據(jù)庫(kù)字段的一一對(duì)應(yīng)關(guān)系.然后把這種關(guān)系填充到模板中.

我們來(lái)看下例子:

public class PlanExe ...{      private int id;       private long planId;       private String title;       private String body;       private String createTime;       private String lastModifyTime;       public String getBody() ...{          return body;      }  ...  }

這是一個(gè)普通的javabean

我們?cè)倏匆幌耰Batis映射文件轉(zhuǎn)化后的結(jié)果:

﹤?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="PlanExe"﹥      ﹤typeAlias alias="PlanExe" type="zhmt.keeper.model.PlanExe" /﹥       ﹤select id="PlanExe.getPlanExeById"         resultClass="PlanExe" parameterClass="int"﹥          SELECT               id AS id,      plan_id AS planId,      title AS title,      body AS body,      create_time AS createTime,      last_modify_time AS lastModifyTime           FROM plan_exe           WHERE id=#id#;      ﹤/select﹥       ﹤insert id="PlanExe.insert" parameterClass="PlanExe"﹥          INSERT INTO plan_exe               (id,plan_id,title,body,create_time,last_modify_time)           VALUES               (#id#,#planId#,#title#,#body#,#createTime#,#lastModifyTime#) ;      ﹤/insert﹥       ﹤update id="PlanExe.update" parameterClass="PlanExe"﹥          UPDATE plan_exe SET               id=#id#,      plan_id=#planId#,      title=#title#,      body=#body#,      create_time=#createTime#,      last_modify_time=#lastModifyTime#           WHERE id = #id# ;      ﹤/update﹥  ﹤/sqlMap﹥

這里我只是做了select,insert,update三種簡(jiǎn)單模型,但是有了這個(gè)模型,接下來(lái)的工作就容易多了,改幾下就可以了.

到此,相信大家對(duì)“怎么自動(dòng)生成ibatis映射文件”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢(xún),關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI