解决方法属性名和数组库字段名不一致的问题(重要)
声明
本文为其他博主文章总结,仅用作个人学习,特此声明
参考文章链接
(3条消息) 狂神说 | Mybatis完整版笔记_小七rrrrr的博客-CSDN博客_狂神说mybatis笔记
解决方法属性名和数组库字段名不一致的问题
1.问题
数据库中的字段
新建一个项目,拷贝之前的,测试实体类字段不一致
出现了问题
原理如下
select * from mybatis.users where id = #{id}
select id,name,pwd from mybatis.uers where id = #{id}
解决方法:起别名
这个方法简单且有效,但很多情况下不实用
我们再学习另一种方法:使用结果集映射
2.resultMap结果集映射
结果集映射说白了就是将数据库中的列 ----> 实体类中的属性字段
原理就是实现以下这种对应关系来解决我们的问题
id name pwd
id name password
<!--结果集映射-->
<resultMap id="UserMap" type="User">
<!--column 数据库中的字段 property 实体类中的属性-->
<result column="id" property="id"></result>
<result column="name" property="name"></result>
<result column="pwd" property="password"></result>
</resultMap>
<select id = "getUserById" resultMap="UserMap">
select * from mybatis.users where id = #{id}
<!--select id,name,pwd as password from mybatis.users where id = #{id}-->
</select>
-
resultMap
元素是 MyBatis 中最重要最强大的元素 -
对于简单的语句根本不需要配置显式的结果映射,而对于复杂一点的语句只需要描述它们的关系就行了。
ResultMap
最优秀的地方在于,虽然你已经对它相当了解了,但是根本就不需要显式地用到他们
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律