问题描述
做一个web项目的时候,发现某个特定数据项传值总是出现问题,如:
或
其中的 "color_grade" 字段传值总是为空:
因为一般java后端中命名是使用驼峰命名,而数据库字段则是小写和下划线命名,所以我尝试使用@TableField字段注解来进行字段匹配,尝试后发现还是不行。
问题解决
问题在于数据字段的两种命名方式混杂在一起,导致后端解读时自相矛盾
方法一:直接使用驼峰命名(推荐)
、
方法二:下划线命名 + 关闭 mybatisplus 的自动转换
使用下划线命名,则需关闭 mybatisplus 的自动转换
需要在配置文件中加入此行:
(我的配置文件位置是resources文件夹下的application.propertityies文件中)
mybatis-plus.configuration.map-underscore-to-camel-case=false
同样可以成功运行
最后注意,前端从后端获取的值也需要使用驼峰命名法(或对应的名称)获取,读者可以console输出到控制台后,F12打开检查切换到控制台进行验证。