最近我在开发系统的过程中发现了一个问题,我数据库中数据表的字段名使用的全是大写字母,Java实体类中属性也都是大写字母,但是返回给前端的时候所有属性名却变成了小写的。
我查阅资料后解决了问题,因此记录下来,避免以后再次踩坑。
- 数据库字段的字段名是大写字母,如下
ID | NAME |
---|---|
1 | 小红 |
2 | 小明 |
- Java实体类属性也是大写字母,如下
public class Person { private Integer ID; private String NAME; // Getter and Setter}
- 前端接收到的却是小写字母,如下
{ "data": [ { "id": 1, "name": "小红" }, { "id": 2, "name": "小明" } ]}
查阅资料后发现,这是因为 Java 中的命名约定是使用驼峰命名法,即属性名的第一个单词小写,后面的单词首字母大写。
但是在返回给前端时,通常会使用 JSON 格式,而 JSON 中的属性名是区分大小写的,因此会将属性名转换为小写字母。
如果想在返回给前端时保留属性名的大小写,可以使用 Jackson 库中的 @JsonProperty 注解来指定属性名。
将实体类进行以下修改即可
import com.fasterxml.jackson.annotation.JsonProperty;public class Person { @JsonProperty("ID") private Integer ID; @JsonProperty("NAME") private String NAME; // Getter and Setter}
来源地址:https://blog.csdn.net/qq_45256357/article/details/130489338