1. 问题描述
最近我在开发系统的过程中发现了一个问题,我数据库中数据表的字段名使用的全是大写字母,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": "小明"
}
]
}
2. 原因
查阅资料后发现,这是因为 Java 中的命名约定是使用驼峰命名法,即属性名的第一个单词小写,后面的单词首字母大写。
但是在返回给前端时,通常会使用 JSON 格式,而 JSON 中的属性名是区分大小写的,因此会将属性名转换为小写字母。
如果想在返回给前端时保留属性名的大小写,可以使用 Jackson 库中的 @JsonProperty 注解来指定属性名。文章来源:https://www.toymoban.com/news/detail-634124.html
3. 解决方法
将实体类进行以下修改即可文章来源地址https://www.toymoban.com/news/detail-634124.html
import com.fasterxml.jackson.annotation.JsonProperty;
public class Person {
@JsonProperty("ID")
private Integer ID;
@JsonProperty("NAME")
private String NAME;
// Getter and Setter
}
到了这里,关于Java实体类属性和数据库字段都是大写字母,为什么返回给前端会变成小写字母的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!