我有一个非常简单的 bean:
public class StatusBean {
private String name;
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern="MM-dd-yyyy")
private Date startDate;
@JsonFormat(shape=JsonFormat.Shape.STRING, pattern="MM-dd-yyyy")
private Date endDate;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Date getStartDate() {
return startDate;
}
public void setStartDate(Date startDate) {
this.startDate = startDate;
}
public Date getEndDate() {
return endDate;
}
public void setEndDate(Date endDate) {
this.endDate = endDate;
}
}
然后我将它包装在另一个 bean 中,我用它来包装对象以获得带有消息和内容的漂亮 json 格式:
public class ResponseBean {
private boolean success = false;
private String message;
private Object data;
public boolean isSuccess() {
return success;
}
public void setSuccess(boolean success) {
this.success = success;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
public Object getData() {
return data;
}
public void setData(Object data) {
this.data = data;
}
}
在我的 Controller 中,我使用 setData() 在响应 bean 中设置 Status bean;
Spring 以 JSON 格式将其序列化,但日期的输出未格式化。我得到标准的“yyyy-MM-DD”格式。
我做错了什么吗?我如何让它工作?
最佳答案
我遇到了同样的问题并修复了在 @JsonFormat(shape=JsonFormat.Shape.STRING, pattern="MM-dd- yyyy")
关于java - @JsonFormat 在嵌套对象中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38838037/