问题
数据查询出后其中几个字段为null
解决方法:
数据库的字段命名方式为使用下划线连接,对应的实体类应该是驼峰命名方式,而我使用的是和数据库同样的命名方式。
所以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
在初始化的时候设置全局配置
修改方法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"/>
到此这篇关于Mybatis plus关闭驼峰命名的四种方法(防止出现查询为Null)的文章就介绍到这了,更多相关Mybatis plus关闭驼峰命名内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!