5.解决实体类属性名和数据库字段不匹配问题

1.问题

 当出现数据库和实体类不匹配时,与数据库不配的属性就会查询不到数据

      数据库中 id name pwd
      实体类中 id name password

   

    解决方法:
  (1) 在sql语句中给不一致的字段起别名

<select id="getUserById" parameterType="int" resultType="User">
<!--select * from mybatis.user where id = #{id}-->
select id,name,pwd as password from mybatis.user where id = #{id}
</select>

  (2)ResultMap结果集映像

<resultMap id="rsMap" type="User">
    <!--那个字段不一致就那个字段进行映射-->
    <result column="pwd" property="password"/>
 </resultMap>

<select id="getUserById" parameterType="int" resultMap="rsMap">
    select * from mybatis.user where id = #{id}
</select>

2.ResultMap(查询结果集)

  ResultMap 元素是MyBatis 中最重要最强大的元素
  ResultMap 的设计思想是,对于简单的语句根本不需要配置显式的结果映射,而对于复杂一点的语句只需要描述它们的关系就行了
  Resu1tmap 最优秀的地方在于,虽然你已经对它相当了解了,但是根本就不需要显式地用到他们。

 

posted on 2023-01-04 19:12  人无远虑必有近忧  阅读(405)  评论(0编辑  收藏  举报

导航