mybatisplus下划线驼峰转换的问题解决

 更新时间:2024年10月30日 11:29:12   作者:Echoo华地  
在mybatis-plus中,下划线-驼峰自动转换可能导致带下划线的字段查询结果为null,本文就来介绍一下mybatisplus下划线驼峰转换的问题解决,感兴趣的可以了解一下

问题儿:对象中包含下划线的字段儿查询不出来

mybatis-plus中,默认开启了下滑线-驼峰转换
会把数据库字段中的下划线自动转换成驼峰形式,然后去匹配实体类对象的字段

online_num -> onlineNum

如果在一个实体类中存在一个带下划线的字段,查询出来为null

 private Integer online_num;

即使用了@TableField()注解去指定映射关系,查询结果也为null

 @TableField("online_num")
 private Integer online_num;

问题就是出现在了驼峰转换这里,因为已经指明了映射关系,所以把驼峰转换关掉就行:
yml:

mybatis-plus:
  configuration:
    map-underscore-to-camel-case: false

properties:

mybatis-plus.configuration.map-underscore-to-camel-case=false

但是这里有个问题,你关了自动驼峰转换,所有字段都要通过@TableField()注解去指定映射关系或者在mapper.xml中指定映射关系,这样增加了很多工作量。所以非必要情况下类字段还是不要用_去命名字段,省得麻烦。

实在不行,如果一定要用下划线字段,看看具体的原因是什么:

①如果是序列化或者反序列话需要的话,可以用@JsonProperty和@JsonAlias来解决
②如果是toString需要,那就重写一下Object的toString方法
③其他情况的话,可以加一个字段比如a_b,就加一个aB字段,然后手写一下a_b字段对应的getter,setter,使它们指向aB字段,如果不想转字段就转对象,查询用一个对象,然后对业务一个对象,查询出来后就转成业务对象,奇技淫巧还是很多滴~

到此这篇关于mybatisplus下划线驼峰转换的问题解决的文章就介绍到这了,更多相关mybatisplus下划线驼峰转换内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Spring Boot Nacos 实现不停服发布过程详解

    Spring Boot Nacos 实现不停服发布过程详解

    这篇文章主要为大家介绍了Spring Boot Nacos实现不停服发布过程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • SpringBoot如何使用MyBatis-Plus实现高效的数据访问层

    SpringBoot如何使用MyBatis-Plus实现高效的数据访问层

    在开发 Spring Boot 应用时,数据访问是不可或缺的部分,本文将详细介绍如何在 Spring Boot 中使用 MyBatis-Plus,并结合具体代码示例来讲解它的使用方法和常见配置,希望对大家有一定的帮助
    2025-04-04
  • java加密算法--MD5加密和哈希散列带秘钥加密算法源码

    java加密算法--MD5加密和哈希散列带秘钥加密算法源码

    这篇文章主要介绍了java加密算法--MD5加密和哈希散列带秘钥加密算法源码的相关资料,这里附实例代码,帮助到大家学习理解,需要的朋友可以参考下
    2016-11-11
  • 深入理解spring多数据源配置

    深入理解spring多数据源配置

    项目中我们经常会遇到多数据源的问题,尤其是数据同步或定时任务等项目更是如此。本篇文章主要介绍了spring多数据源配置,有兴趣的可以了解一下。
    2017-01-01
  • Java中的事件处理机制详细解读

    Java中的事件处理机制详细解读

    这篇文章主要介绍了Java中的事件处理机制详细解读,ava事件处理是采取"委派事件模型",当事件发生时,产生事件的对象会把此"信息"传递给"事件的监听者"处理,需要的朋友可以参考下
    2024-01-01
  • java迭代器基础知识点总结

    java迭代器基础知识点总结

    在本篇内容里小编给大家整理了一篇关于java迭代器基础知识点总结内容,有兴趣的朋友们可以学习参考下。
    2021-01-01
  • java IO实现电脑搜索、删除功能的实例

    java IO实现电脑搜索、删除功能的实例

    下面小编就为大家带来一篇java IO实现电脑搜索、删除功能的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12
  • Java Persistence对象关系映射的基础与应用

    Java Persistence对象关系映射的基础与应用

    这篇文章主要介绍了Java Persistence对象关系映射的基础与应用,Persistence API是Java平台提供的对象关系映射标准,旨在简化关系型数据库的持久化操作,它在Java EE和Java SE环境中均可使用,为开发者提供了统一的数据访问方式,需要的朋友可以参考下
    2025-05-05
  • BeanFactory与ApplicationContext的区别示例解析

    BeanFactory与ApplicationContext的区别示例解析

    这篇文章主要为大家介绍了BeanFactory与ApplicationContext的区别示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • Java中double保留两位小数的多种方法

    Java中double保留两位小数的多种方法

    这篇文章主要给大家介绍了关于Java中double保留两位小数的多种方法,对于double数据类型进行计算发生的精度丢失的情况,可以按照自己的需求选择任意方式,需要的朋友可以参考下
    2023-07-07

最新评论