zoukankan      html  css  js  c++  java
  • mybatis——解决属性名和数据库字段名不一致问题

    首先说一下,我的数据库名字叫mybatis,里边有一张user表,表中有三个字段,id、name、pwd;然后实体类中对应三个属性id、name、password(id和name跟数据库字段名一致,但是第三个属性password和数据库的字段pwd不同)

     解决方案

    方式一:起别名

      在映射文件中给sql语句里的字段取别名

    <select id="getUserById" parameterType="int" resultType="user">
            select id,name,pwd AS password from mybatis.user WHERE id = #{id}
    </select>

    *注意:

      若数据库字段名和实体类的属性名相同,则可以不用取别名

    方式二:使用resultMap(结果集映射)

    <resultMap id="UserMap" type="user">
      <result column="pwd" property="password"/>
    </resultMap>
    <select id="getUserById" parameterType="int" resultMap="UserMap">
        select * from mybatis.user WHERE id = #{id}
    </select>

    注意:

      若数据库字段名和实体类的属性名相同,则resultMap中可以不用写它们的result标签。当然写上也是没关系的,例如:

    <resultMap id="UserMap" type="user">
      <result column="id" property="id">
      <result column="name" property="name">   <result column="pwd" property="password"/> </resultMap> <select id="getUserById" parameterType="int" resultMap="UserMap"> select * from mybatis.user WHERE id = #{id} </select>
  • 相关阅读:
    20110825 talk 1
    [原]spring学习笔记9.1.2Spring对Aop的概念性介绍
    [转]Servlet总结
    有关锁
    [转]java中hashcode()和equals()的详解
    转置
    [转]JNDI到底是什么,有什么作用
    前端(js/css/html)那些小的知识点,持续更新......
    积累的一些常用javascript函数
    25大实用的jQuery技巧和解决方案
  • 原文地址:https://www.cnblogs.com/bear7/p/12499577.html
Copyright © 2011-2022 走看看