1.1.1.1.      步骤一:将驼峰匹配注释掉 --------------测试完成后仍然 回来开启  其他地方可能用到

一旦注释掉驼峰匹配,那么再通过queryUserById查询的结果中,用户名就无法封装了,此时我们可以尝试使用ResultMap来解决这个问题。

1.1.1.2.      步骤二:在UserMapper.xml中配置resultMap

<!--

resultMap标签:可以自己配置对象属性和表字段的映射(不仅仅是驼峰规则的映射)

type属性:结果集的封装类型

id属性:唯一标识

autoMapping属性:如果不配置,默认为true。对其他属性进行自动映射。

-->

<resultMap type="User" id="userResultMap" autoMapping="true">

<!-- id标签:配置主键映射,column:表中的字段名称,property:属性名称 -->

<id column="id" property="id"/>

<!-- 可以用来配置普通类型字段和属性映射(非复杂类型) -->

<result column="user_name" property="userName"/>

</resultMap>

1.1.1.3.      步骤三:在statement中引用自定义resultMap

<!--

select:查询的statement,用来编写查询语句。

id:语句的唯一标识,使用动态代理之后,必须和mapper接口中的方法名称一致。

resultType:配置返回的结果集类型

parameterType:参数类型,可以省略。

-->

<!-- resultMap:引用自定义结果集的唯一标识 -->

<select id="queryUserById" resultMap="userResultMap">

select * from tb_user where id = #{id}

</select>

测试无误

注意:测试完记得将驼峰命名的配置重新开启,因为其他的测试方法还要用。

resultMap自定义映射---8.3.1. 解决列名(表中的字段名称)和实体类中的属性名不一致的更多相关文章

  1. MyBatis系列二 之 数据库列名于程序实体类中字段名称不一致

    MyBatis系列二  之   数据库列名于程序实体类中字段名称不一致 情景:当数据库中的列名与我们程序实体类中的字段名称不一致         使用ResultMap节点配置信息  在映射文件中  ...

  2. Hive分区表新增字段及修改表名,列名,列注释,表注释,增加列,调整列顺序,属性名等操作

    一.Hive分区表新增字段 参考博客:https://blog.csdn.net/yeweiouyang/article/details/44851459 二.Hive修改表名,列名,列注释,表注释, ...

  3. SpringBoot08 请求方式、参数获取注解、参数验证、前后台属性名不一致问题、自定义参数验证注解、BeanUtils的使用

    1 请求方式 在定义一个Rest接口时通常会利用GET.POST.PUT.DELETE来实现数据的增删改查:这几种方式有的需要传递参数,后台开发人员必须对接收到的参数进行参数验证来确保程序的健壮性 1 ...

  4. 解决SpringDataJpa实体类中属性顺序与数据库中生成字段顺序不一致的问题

    一.在application.yml配置中添加数据库根据实体类自动创建数据库表的配置(这里数据库采用MySQL数据库) jpa: database: MYSQL show-sql: true #Hib ...

  5. resultMap自定义映射(多对一)

    自定义resultMap,处理复杂的表关系,实现高级结果集映射 1) id :用于完成主键值的映射 2) result :用于完成普通列的映射 3) association :一个复杂的类型关联;许多 ...

  6. resultMap自定义映射(一对多)

    collection:处理一对多和多对多的关系 1) POJO中的属性可能会是一个集合对象,我们可以使用联合查询,并以级联属性的方式封装对象.使用collection标签定义对象的封装规则 publi ...

  7. Mybatis中实体类中的字段跟对应表的字段不一致时解决办法

    解决字段名与实体类属性名不相同的冲突 实体类字段: public class Order { private int id; private String orderNo; private float ...

  8. 字段名与属性名不一致问题 通过resultMap解决

  9. 关于entityframework 自动生成实体类中加验证的属性重新生成后属性被覆盖解决办法

    1.手动创建一个部分类 (你可以手动创建 partial class, 内容为空) [MetadataType(typeof(AppleMetadata))] public partial class ...

随机推荐

  1. 树莓派-CentOS-Minimal arm版的设置

    将镜像用 balenaEtcher 写入到树莓派SD卡并启动后,需要对其进行一些设置才能正常使用. 1. 用户名 root 密码 centos 2. 扩展 rootfs 到最大可用空间:cat REA ...

  2. SpringBoot: 7.整合jsp(转)

    springboot内部对jsp的支持并不是特别理想,而springboot推荐的视图是Thymeleaf,对于java开发人员来说还是大多数人员喜欢使用jsp 1.创建maven项目,添加pom依赖 ...

  3. CentOS7.5下,MySQL安装配置指南

    [root@host---- home]# grep 'temporary password' /var/log/mysqld.log --20T02::.457613Z [Note] A tempo ...

  4. Job的运行过程

    Job的运行过程 Job的具体运行过程 a) 运行mapred程序 b) 本次运行将生成一个Job,于是JobClient向JobTracker(ResourceManager)申请一个JobId以标 ...

  5. JS、JQUERY 获取浏览器和屏幕各种高度宽度

    好长时间没有更新博客了... 把我最近积累的一点知识点放上博客,以后以备不需之要,也给大家整理一下.. Javascript: IE中:document.body.clientWidth ==> ...

  6. ZOJ Problem Set - 1002

    参考: 1.http://www.cnblogs.com/phinecos/archive/2008/09/18/1293017.html 基本思想:回溯法 重点在void Solve(int k,i ...

  7. Tcpdump移植

    摘要: tcpdump对网络上的数据包进行截获的包分析工具. tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析.它支持针对网络层.协议.主机.网络或端口的过滤,并提供and.or.n ...

  8. Spark性能调优:广播大变量broadcast

    Spark性能调优:广播大变量broadcast 原文链接:https://blog.csdn.net/leen0304/article/details/78720838 概要 有时在开发过程中,会遇 ...

  9. 无法执行vue初始化命令

    无法执行vue初始化命令:https://www.jianshu.com/p/9eb3cf854aa8 今天vue 初始化项目时提示错误 执行命令: npm install -g vue-cli 执行 ...

  10. 位运算解决“一个数组中,只有一个数字出现n次,其他数字出现k次”问题

    转自:https://blog.csdn.net/monster_girl/article/details/52928864 在学习完位操作后,经常会遇到一类关于查找缺失整数的问题. 第一类是给你一个 ...