SpringBoot | 返回Json实体类属性大小写问题

       今天遇到一个很有意思的问题,写个微博记录一下。前端朋友要我传一个大写属性(类似于PEOPLEName)的json实体给他,可是就算把变量名写成这样,他收到的还是(peoplename),而且这样写不符合小驼峰命名规范,被领导看见会被打手板的啊。怎样想一个两全其美的方法既能给他想要的,又能让我免于酷刑。就在我手足无措,冥思苦想之际,组长过来帮我解决了这个问题,下面我们来看一下这个问题的解决方式。
原因其实很简单,是因为Jackson处理json数据时,会自动把首字母变小写。一个注释就可以解决这个问题,下面是代码示例。

public class JsonVO {
    private String PEOPLEName;

    public JsonVO(String name) {
        this.PEOPLEName = name;
    }
    
    public String getPEOPLEName() {
        return PEOPLEName;
    }
}
String PEOPLEName = "Mws";

    @Override
    public JsonVO getPeopleName() {
        return new JsonVO(PEOPLEName);
    }
{
    "peoplename": "Mws"
}

可以看到就算变量名写成大写返回的结果依然是小写状态,接下来加上这个注解@JsonProperty(注:加在属性上或getter上皆可)

@JsonProperty("PEOPLEName")
private String peopleName;

或者

@JsonProperty("PEOPLEName")
public String getpeopleName() {
     return peopleName;
}

测试一下

{
    "PEOPLEName": "Mws"
}

完美解决~




 

转载于:https://www.cnblogs.com/madecine/p/10600054.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值