代码改变世界

<typeAlias> <reslutmap> <parameterMap>

2011-10-08 16:54  myjava2  阅读(293)  评论(0编辑  收藏  举报
 <typeAlias>元素让您为一个通常较长的、全限定类名指定一个较短的别名。
例如:
<!-- 其实就是将bean的替换成一个短的名字 -->
<typeAlias alias="Student" type="ncut.com.bean.Student"/>
 
<parameterMap>负责将javabean与sql语句进行关联
例如:
<parameterMap class="com.isbn.bean.AlbumDetailInfo" id="albumDetailInfo">
         <parameter property="productid" javaType="java.lang.String" jdbcType="VARCHAR" mode="OUT" />
         <parameter property="albumid" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
         <parameter property="pname" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
         <parameter property="recdate" javaType="java.util.Date" jdbcType="DATE" mode="IN"/>
         <parameter property="pdesc" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
         <parameter property="maker" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
         <parameter property="publisher" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
         <parameter property="format" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
在众多的属性当中id是必须的。它作为<parametermap>元素的唯一标识
在<parameter>元素中,property属性是必须的,其它的是可选项
<parameter>:
              ---->property:是javabean的属性
              ---->jdbcType:是javabean属性对应表的数据库中列的数据类型,通常只有数据库中的该字段可以为null时才需要指出jdbcType属性
              ---->javaType该字段在javabean中的数据类型
              ---->mode是为存储过程中数据项的流向类型
 
<resultMap>返回Map类型
当想得到一个map类型的返回值时可以通过resultMap元素
例如
<resultMap id="albumdetailinfoResultMap" class="com.isbn.bean.AlbumDetailInfo">
    <!--基础属性-->
         <result property="productid" column="PRODUCTID" jdbcType="VARCHAR" />
         <result property="albumid" column="ALBUMID" jdbcType="VARCHAR"/>
         <result property="pname" column="PNAME" jdbcType="VARCHAR"/>
         <result property="recdate" column="RECDATE" jdbcType="DATE"/>
         <result property="pdesc" column="PDESC" jdbcType="VARCHAR"/>
         <result property="maker" column="MAKER" jdbcType="VARCHAR"/>
         <result property="publisher" column="PUBLISHER" jdbcType="VARCHAR"/>
column是替换的数据项名;
那么下面的sql语句就可以这样写了
 <select id="getByIsrc" resultMap="albumdetailinfoResultMap" >
     SELECT <include refid="albumdetailinfoColumns"/>
    
         FROM T_D_ALBUMDETAILINFO WHERE ISRC = #isrc:VARCHAR#
 
    </select>