oracle 数据库字段名与实体类字段名称不匹配的处理方法

之前公司一直都使用sql server 即使数据库字段名称与实体类名称不相同 可以使用诸如:

select id as userId  from tb_user 

 

这种写法,可换到了oracle 之后坑爹的事情发生了,如果还按照上方的写法,属性值就是映射不进去,所以目前找到的解决办法只有使用

<resultMap>来帮助映射:

<!-- 获得查询条件-->
    <select id="getQueryBean" parameterType="com.QueryBean"
            resultMap="tdQueryBean">
        SELECT
        ACCOUNT_NAME,
        ID_NUMBER,
        ACCOUNT_MOBILE ,
        ORGANIZATION,
        SEQ_ID,
        CREATEDATE
        FROM ICS_TD_QUERY_LOG WHERE
        ACCOUNT_NAME=#{account_name} AND
        ID_NUMBER=#{id_number}
        <if test="account_mobile != null">
            AND ACCOUNT_MOBILE = #{account_mobile}
        </if>
        <if test="seq_id != null">
            AND SEQ_ID = #{seq_id}
        </if>
        <![CDATA[AND ROWNUM <= 1]]>
        ORDER BY CREATEDATE DESC
    </select>

    <resultMap type="com.QueryBean" id="tdQueryBean">
        <!-- property对应实体类的属性名称,column为数据库结果集的列的名称 -->
        <result property="account_name" column="ACCOUNT_NAME"/>
        <result property="id_number" column="ID_NUMBER"/>
        <result property="account_mobile" column="ACCOUNT_MOBILE"/>
        <result property="organization" column="ORGANIZATION"/>
        <result property="seq_id" column="SEQ_ID"/>
        <result property="createDate" column="CREATEDATE"/>
    </resultMap>

希望可以帮助到大家

转载于:https://www.cnblogs.com/showme1942/p/7541709.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值