Spring iBatis Sqlmap 以及 parameterClass 和 parameterMap 的使用方法

时间:2022-12-25 16:57:13

int, String等 原始类输入到 DB 的时候使用 parameterClass 即可

但是如果 Member, Test等 类的时候 要用 parameterMap

 

<select id="getSelectedList" resultMap="boardResult" parameterClass="String" >
  SELECT * from testboard WHERE NUM = #NUM#
 </select>
  
 <insert id="insertList"  parameterMap="boardInsert"> 
  INSERT INTO TESTBOARD (NUM, TITLE, CONTENT) VALUES(#num#, #title#, #content#)
 </insert>

 

 

使用ParameterMap 的时候要注意的地方

如果框架里 已设定DataMap 使用即可

 

 - 文件名 sql-map-config.xml -

    <typeAlias alias="dmap" type="com.nhncorp.lucy.common.util.DataMap"/>

如果 同上 有设置的datamap  在alias 可以使用dmap

 

如果不使用dmap 就得设置 <typeAlias> <parameterMap>

 

<typeAlias alias="board" type="com.hangame.template.model.TestText"/>


alias 变数宣言 在type输入 类的位置

<parameterMap class="board" id="boardInsert">
  <parameter property="num" javatype="String"/>     
  <parameter property="title" javatype="String"/>
  <parameter property="content" javatype="String"/>  
 </parameterMap>

 

然后同上设置一个parameterMap


id  ParameterMap 的名称 可能有好几个 所以ibatis 用 id 来区分 (所以id不能重复)

<parameter>设置类的变数的地方

property 写上变数的名字

javatype 变数的类型

 

然后即可使用以下的操作

<insert id="insertList"  parameterMap="boardInsert">
  INSERT INTO TESTBOARD  VALUES(?, ?, ?)
</insert>

 

问号里会以 property的顺序依次进去 

num, title, content