自学内容网 自学内容网

SpringBoot+Lombok项目实体属性名xXxx格式,前端接收不到

问题解析

  • 今天发现后端传给前端的实体类中,有属性为xXxxx格式的,前端也使用相同名称接收,结果却不显示值!
  • 研究了一会发现接口请求回来后,原xXxxx的属性名,会被转为全小写。
  • 具体原因为:使用Lombok生成的getter/setter方法名为getUName/setUName的原因
  • 解决办法有三种,自行选择
    1. 直接修改数据库字段,_前面最少两个字符
    2. 在输出实体类的字段上添加@JsonProperty("xXxx")注解
    3. 手动生成getter/setter方法,手动生成的方法名为getuName/setuName
  • 总结:数据库字段尽量不要在_前面使用一个字符,最少为两个字符,有很多框架处理xXxxx属性名的字段会出现意外情况,比如我之前提到的EasyExcel导出后某列为空问题_easyexcel导出数据为空-CSDN博客,也是因为字段名为xXxx格式,配合lomBok自动生成的getter/setter方法出现的!
    • 错:u_name
    • 对:user_name/ur_name

报错复现

代码

在这里插入图片描述

效果

在这里插入图片描述

解决办法

1、方法一

略…

2、方法二

在每个xXxx类型的属性名上添加@JsonProperty("xXxx")

代码及效果

在这里插入图片描述

3、方法三

手动生成getter/setter方法

代码及效果

在这里插入图片描述


原文地址:https://blog.csdn.net/qq_57404736/article/details/145139966

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!