Mybatis使用 resultMap 数据返回 null 的情况

Mybatis 使用 resultMap 返回 null 的错误记录

resultMap 数据
在这里插入图片描述

对应的sql
在这里插入图片描述

在这里插入图片描述

postMan 测试结果
在这里插入图片描述

数据库数据
在这里插入图片描述

能看到数据库中的数据都是有的,但是查询的时候返回的都是 null, 有一个很有意思的特点就是,只要使用了 as 的都是显示的 null
这里将 as 全部去掉
在这里插入图片描述

再次测试结果
在这里插入图片描述

发现数据都是返回了的.

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MyBatis中,ResultMap用于解决数据库表中字段与实体类中属性不一致的情况。通过建立一种映射关系,使表中的字段与实体类中的属性一一对应。 在mapper.xml文件中,可以通过ResultMap属性来指定映射。首先,需要在mapper.xml文件中定义一个ResultMap,指定映射的JavaBean类型,并为该ResultMap指定一个唯一的id。在ResultMap中,使用<result>标签来指定字段和属性的映射关系。其中,column属性指代表数据库表中的字段,property属性指代JavaBean中的属性名。例如: ``` <resultMap id="brandResultMap" type="brand"> <result column="brand_name" property="brandName"/> <result column="company_name" property="companyName"/> </resultMap> ``` 接着,在sql语句中使用<select>标签,通过resultMap属性指定使用哪个ResultMap进行映射。例如: ``` <select id="selectAll" resultMap="brandResultMap"> select * from tb_brand; </select> ``` 如果需要返回的对象类中包含对象属性,同样需要进行映射。在ResultMap中,可以使用<association>标签来指定对象属性的映射关系。例如: ``` <resultMap type="com.pjf.mybatis.po.Hotel" id="myHotel"> <id column="id" property="id" jdbcType="INTEGER" /> <result column="hotel_name" property="hotelName" jdbcType="VARCHAR" /> <result column="hotel_address" property="hotelAddress" jdbcType="VARCHAR" /> <result column="price" property="price" jdbcType="INTEGER" /> <!-- 这里可以继续添加其他属性的映射 --> </resultMap> ``` 然后,在sql语句中使用<select>标签,通过resultMap属性指定使用哪个ResultMap进行映射。例如: ``` <select id="getHotel" resultMap="myHotel"> select * from hotel where id=#{id} </select> ``` 通过使用ResultMap,我们可以灵活地处理实体类与数据库表字段之间的映射关系,以及实体类中对象属性的映射。这样可以更好地组织和管理数据对象的映射规则,提高代码的可读性和可维护性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [mybatis中关于resultMap使用](https://blog.csdn.net/a18372016358/article/details/129375251)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [MyBatis学习(3)—— resultMap使用](https://blog.csdn.net/weixin_41565013/article/details/88920898)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值