前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Mybatis当bean里属性名和数据库属性名不一样时如何解决?

Mybatis当bean里属性名和数据库属性名不一样时如何解决?

作者头像
名字是乱打的
发布2022-05-13 12:39:52
3120
发布2022-05-13 12:39:52
举报
文章被收录于专栏:软件工程
方法一共三种

例子

代码语言:javascript
复制
pojo里属性名是               数据库里属性名是:
username ;                       user_name
userage ;                        user_age
方法一: 在写sql时候起别名
代码语言:javascript
复制
<select id="selectByExampleWithBLOBs" resultType ="ResultMapWithBLOBs" parameterType="int" >
    select  user_name username,user_age  userage  from user where id = #{a};
</select>
方法二:在mybatis全局配置文件sqlMapConfig.xml中 开启驼峰命名规则
代码语言:javascript
复制
<configuration>
<settings>
<!--开启驼峰命名规则,可以将数据库中的下划线映射为驼峰命名例如:last_name可以自动映射为lastName
-->
<setting name="mapUnderscorgToCamelCase"  value="true"/】
</settings>
方法三:在mapper的映射文件中使用resultMap自定义映射规则

返回结果集定义为resultmap, 在type里定义为pojo全类名,里面配置列和属性的对应关系

代码语言:javascript
复制
<select id="selectByExampleWithBLOBs" resultMap="myMap" parameterType="int" >
    select  user_name username,user_age  userage  from user where id = #{a};
</select>

<resultMap type="com.atguigu.mybatis.entities.Employee"  id="myMap">
  <!--映射主键-->
  <id column="id"property="id"/>
  <!--映射其他列-->
  <result column="user_name" property="username"/>
  <result column=user_age"   property="userage"/>
</resultMap>
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-05-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 方法一共三种
    • 方法一: 在写sql时候起别名
      • 方法二:在mybatis全局配置文件sqlMapConfig.xml中 开启驼峰命名规则
        • 方法三:在mapper的映射文件中使用resultMap自定义映射规则
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档