【发布时间】:2018-06-15 04:43:51
【问题描述】:
我有课
public class ResponseWrapper<T> {
private T mObject;
/**
* @return the mObject
*/
public T getmObject() {
return mObject;
}
/**
* @param mObject the mObject to set
*/
public void setData(T mObject) {
this.mObject = mObject;
}
}
T 是我设置的泛型类型对象。所以我会像
ResponseWrapper<Dog> responseWrapper = new ResponseWrapper();
responseWrapper.setData(new Dog())
在 Dog 类中,我使用 @JsonRootName("dog") 对其进行了注释
我的问题是,我希望 JSON 输出应该类似于 ResponseWrapper
{
"dog": {
"dogId": 19
}
}
但我的 JSON 就像
{
"mObject": {
"dogId": 19
}
}
它采用变量名的名称。我希望杰克逊采用 @JsonRootName 值而不是变量名。但我想我在这里遗漏了一些东西。
【问题讨论】:
-
你有
UNWRAP_ROOT_VALUE set吗? -
我有这个设置 spring.jackson.deserialization.unwrap-root-value=true。
标签: spring-boot serialization jackson