Java教程

mybatis ResultMap结果集映射

本文主要是介绍mybatis ResultMap结果集映射,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

下面代码:

 

 

 

根据ID查用户 ,那么:

 

 

如果我们把它User中的 birthday改为 birth,那么就会出现下面问题【两种情况】:

 

1. birth 为空 例如: 

 

 

所以最简单的结局方法就是 语句加别名:

 

 所以证实了 数据库字段 一定要和返回类型User中的变量名一样! 其次查询出来是这样的: 【下面时间被我改过....】

 

 

 


 

最笨的办法是起别名AS  其次就是用 ResultMap:

 

 

<?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">


    <mapper namespace="com.bihu.Dao.UserMapper">
    <!--创建一个resultMap-->
<resultMap id="testResultMap" type="com.bihu.Bean.User">
    <!--下面的column是数据库字段名 property是Bean的字段-->
    <!--相当于手动把数据库数据封装到JavaBean字段中-->
    <result column="id" property="id"/>
    <result column="username" property="username"/>
    <result column="password" property="password"/>
    <result column="birthday" property="birth"/>  <!--主要是这个 因为数据库和Bean成员变量名对不上-->
</resultMap>
    <select id="findId" resultMap="testResultMap">
        select *
        from USER where id = #{id};
    </select>
    </mapper>
UserMapper.xml

 

这就是这个作用【之前在 一对一查询用过这个  也是手动封装类】

 

但是你可以把 数据库字段 和 JavaBean成员变量名不一样的才Result 一下 ,例如:

 

 

运行发现 结果也是一样的。

 

这就是 结果集  resultMap 最最最简单的使用 【解决字段名不一样】

 

这篇关于mybatis ResultMap结果集映射的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!