亲宝软件园·资讯

展开

Mybatis plus关闭驼峰命名

Hi丶ImViper 人气:0

问题

数据查询出后其中几个字段为null

img

解决方法:

数据库的字段命名方式为使用下划线连接,对应的实体类应该是驼峰命名方式,而我使用的是和数据库同样的命名方式。

img

所以mybatis-plus映射不到,修改实体类的字段命名方式为驼峰命名方式。

这是因为mybatis默认开启驼峰命名法,按规则数据表中的lastName字段应对应实体类中的last_name属性,而实体类中的lastName属性应对应数据表中的last_name字段

修改方法1

可以通过配置文件来关闭驼峰命名

我们可以通过configuration.map-underscore-to-camel-case: false 配置,去掉默认实现;

mybatis-plus:
  global-config:
    db-config:
      id-type: 0
      table-prefix: t_
      table-underline: false
  configuration:
    map-underscore-to-camel-case: false

修改方法2

解决方案:检查实体类中的字段是否存在下划线,将所有所有存在的下划线的字段,修改为标准的驼峰命名字段。如下图所示。

在这里插入图片描述

修改方法3

在初始化的时候设置全局配置

image-20201029093750129

修改方法4(Springboot)

springboot :

\1. appliction.yml 里设置 关闭驼峰式编码

mybatis-plus:
 configuration:
  # 是否开启自动驼峰命名规则(camel case)映射,即从经典数据库列名 A_COLUMN(下划线命名) 到经典 Java 属性名 aColumn(驼峰命名) 的类似映射
  map-underscore-to-camel-case: false

\2. 设值全局匹配设置:

<!-- MP 全局配置 -->
  <bean id="globalConfig" class="com.baomidou.mybatisplus.entity.GlobalConfiguration">
    <!-- 全局的主键策略 -->
    <property name="idType" value="0"/>
    <!--映射数据库下划线字段名到数据库实体类的驼峰命名的映射-->
    <property name="dbColumnUnderline" value="flase"/>
  </bean>
<property name="dbColumnUnderline" value="flase"/>

加载全部内容

相关教程
猜你喜欢
用户评论