ibatis ResultMap ParameterMap

                在执行查询 Mapped Statement 时,resultMap 负责将结果集的列值映射成 Java Bean的属性值。resultMap 的结构如下: <resultMap id="resultMapName" clss="some.domain.Class" [extends="parent-resultMap"]> <result property="ropertyName" clumn="COLUMN_NAME"[columnIndex=""] [jaaType="int"]jdbcType="NUMERIC"[nullValue="-999999"] [elect="smeOtherStatement"]/> <result ....../><result ....../><result ....../></resultMap>// extends 是可选的属性,可设定成另外一个 resultMap 的名字,并以它为基础。和在 Java 中继承一个类相似,父 resultMap 的属性将作为子 resutlMap 的一部分。父 resultMap 的属性总是加到子 resultMap 属性的前面,并且父 resultMap必须要在子 resultMap 之前定义。父 resultMap 和子 resultMap 的 class 属性不一定要一致,它们可以没有任何关系。// columnIndex 是可选的,用于改善性能。属性 columnIndex的值是 ResultSet 中用于赋值 Java Bean 属性的字段次序号。在 99%的应用中,不太可能需要牺牲可读性来换取性能。使用 columnIndex,某些 JDBC Driver可以大幅提高性能,某些则没有任何效果。// nullValue 指定数据库中 NULL 的替代值。因此,如果从 ResultSet 中读出 NULL值,Java Bean 属性将被赋值属性 null指定的替代值 parameterMap 负责将 Java Bean 的属性映射成 statement 的参数 <parameterMap id="parameterMapName" class="com.omain.Product"]>    <parameter property ="proprtyName" [jdbcType="VARCHAR"] [jvaType="tring"]        [nullValue="NUMERIC"] [ull="-999999"] />     <parameter ...... />     <parameter ...... /> </parameterMap> // 括号[]是可选的属性。parameterMap 元素只要求属性 id 作为唯一标识。属性 class 是可选的但强烈推荐使用。和 parameterClass 类似,class 属性可以框架检查输入参数的类型并优化性能。//以下是一个完整的例子<parameterMap id="insert-product-param" class"cm.domain.Product">    <parameter property="id" jdbcType="NUMERIC" jvaType="int" nullValue="-9999999"/>    <parameter property="dscription" dbcType="VARCHAR" nullVlue="NO_ENTRY"/></parameterMap><statement id="insertroduct" prameterMap="insert-product-param">    insert into PRODUCT (PRD_ID, PRD_DESCRIPTION) values (?,?); </statement>//上面的例子中,Java Bean 的属性“id”和“description”将按顺序地替换 Mapped Statement “insertProduct”的值符号(?)注意:parameterMap 并不自动地绑定到特定的 Java 类。因此在上面的例子中,任何拥有“id”和“description”属性的 Java Bean 对象,都可以作为 parameterMap 的输入。如果需要将输入绑定到特定的 Java 类,可以使用 mapped-statement 的 resultClass 属性。注意:Parameter Map 的名称(id)局部的,只在定义它的 SQL Map XML文件中有效。不过,加上 SQL Map 的名称(即在<sqlMap>根元素中的名称)作为前缀,您可以在另一个 SQL Map XML文件中引用它。例如,要在另一个文件中引用以上的 parameterMap,可以使用名称“Product.insert-product-param”。            

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值