application.yml文件中如何开启mybatis自动驼峰映射

 更新时间:2023年08月04日 10:43:48   作者:音风水  
这篇文章主要介绍了application.yml文件中开启mybatis自动驼峰映射的方法,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

application.yml文件中开启mybatis自动驼峰映射

configuration:
   #是否开启自动驼峰命名规则映射:从数据库列名到Java属性驼峰命名的类似映射
  map-underscore-to-camel-case: true
  • 如果不开启映射 在使用BaseMapper 和Iservice封装的方法时 会报错
  • 如果在Mapper.xml文件中自己写sql语句 在selsect* 或者其他字段名自己指定清楚的情况下 不会报错 但同样无法正确返回数据
  • 道理很简单 因为数据库数据 写不到java的属性名里 只是查询能查到 不会报错

sql查询默认查询java字段 通过映射变为数据库字段 因为BaseMapper 和Iservice封装的方法会默认你的java字段和数据库字段一致

另外 不知道为什么我的map-underscore-to-camel-case默认为true 设置为false又不能用了 删掉就恢复正常 不知道是因为框架还是什么原因 非常奇怪

Mybatis/Mybatis-Plus驼峰式命名映射

一、mybatis驼峰式命名

方法一:

使用前提:数据库表设计按照规范“字段名中各单词使用下划线"_"划分”;使用好处:省去mapper.xml文件中繁琐编写表字段列表与表实体类属性的映射关系,即resultMap。示例:

<resultMap type="io.renren.modules.generator.entity.TokenEntity" id="tokenMap">
        <result property="id" column="id"/>
        <result property="userId" column="user_id"/>
        <result property="token" column="token"/>
        <result property="expireDate" column="expire_date"/>
        <result property="updateDate" column="update_date"/>
</resultMap>

方法二:

mybatis-config.xml文件:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <settings>
        <!-- 开启驼峰,开启后,只要数据库字段和对象属性名字母相同,无论中间加多少下划线都可以识别 -->
        <setting name="mapUnderscoreToCamelCase" value="true" />
    </settings>
</configuration>

方法三:

application.yml文件指定配置文件

mybatis:
  typeAliasesPackage: com.example.mybaitsxml.dao.entity
  mapperLocations: classpath:mapper/*.xml
  configLocation: classpath:/mybatis-config.xml

二、mybatisPlus默认开启驼峰命名映射

也可以关闭

mybatis-plus:
  configuration:
    #在映射实体或者属性时,将数据库中表名和字段名中的下划线去掉,按照驼峰命名法映射 address_book ---> addressBook
    map-underscore-to-camel-case: false

到此这篇关于application.yml文件中开启mybatis自动驼峰映射的文章就介绍到这了,更多相关mybatis自动驼峰映射内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringData JPA中@OneToMany和@ManyToOne的用法详解

    SpringData JPA中@OneToMany和@ManyToOne的用法详解

    这篇文章主要介绍了SpringData JPA中@OneToMany和@ManyToOne的用法详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-10-10
  • Java死锁避免的五种方法举例总结

    Java死锁避免的五种方法举例总结

    这篇文章主要介绍了Java死锁避免的五种方法,包括按固定顺序加锁、使用tryLock+超时、一次性申请所有资源、使用Lock替代synchronized以及检测与恢复,需要的朋友可以参考下
    2025-05-05
  • Java中的for循环高级用法

    Java中的for循环高级用法

    本文系统解析Java中传统、增强型for循环、Stream API及并行流的实现原理与性能差异,并通过大量代码示例展示实际开发中的最佳实践,感兴趣的朋友一起看看吧
    2025-06-06
  • Java读取TXT文件内容的方法

    Java读取TXT文件内容的方法

    本篇文章主要介绍了Java读取TXT文件内容的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • Java实现5种限流算法及7种限流方式

    Java实现5种限流算法及7种限流方式

    本文主要介绍了Java实现5种限流算法及7种限流方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • 搭建 springboot selenium 网页文件转图片环境的详细教程

    搭建 springboot selenium 网页文件转图片环境的详细教程

    这篇文章主要介绍了搭建 springboot selenium 网页文件转图片环境,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • 轻松搞定SpringBoot JPA使用配置过程详解

    轻松搞定SpringBoot JPA使用配置过程详解

    Spring Boot是由Pivotal团队提供的全新框架,该框架使用了特定的方式来进行配置,它默认配置了很多框架的使用方式,就像 Maven整合了所有的Jar包,Spring Boot 整合了所有的框架
    2021-06-06
  • Java中ArrayList和SubList的坑面试题

    Java中ArrayList和SubList的坑面试题

    集合是Java开发日常开发中经常会使用到的,下面这篇文章主要给大家介绍了关于Java中ArrayList和SubList的坑面试题,需要的朋友可以参考下
    2022-05-05
  • java编程实现屏幕截图(截屏)代码总结

    java编程实现屏幕截图(截屏)代码总结

    这篇文章主要介绍了java编程实现屏幕截图(截屏)代码,结合3个实例总结分析了Java截屏时页面抓取及图片保存的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-11-11
  • java  BASE64Encoder详细介绍及简单实例

    java BASE64Encoder详细介绍及简单实例

    这篇文章主要介绍了java BASE64Encoder详细介绍及简单实例的相关资料,需要的朋友可以参考下
    2017-01-01

最新评论