![](/img/trans.png)
[英]How I return HTTP 404 JSON/XML response in JAX-RS (Jersey) on Tomcat?
[英]Jersey HTTP Response return json value
public class Dto {
private boolean flag;
private String code;
private String message;
private Object data;
......
}
这是一种通用的返回格式。
@GET
@Path("/test2")
public Response appLogin2() {
Dto dto = new Dto();
Device device = new Device();
device.setAreaName("NewYork");
dto.setData(device);
dto.setFlag(true);
Response res = Response.status(Status.OK).entity(dto).build();
return res;
}
但是现在它的返回值是
{
"data": "com.gmi.its.itsmain.model.Device@7067fd1f",
"flag": true
}
我如何获得该返回值
{
"data": {
"areaName": "NewYork"
},
"flag": true
}
我的用户springboot可以获取该返回值。
您应该为该data
属性指定一个类。 当前,它被作为对象读取,这意味着串行器不知道对此会有什么期望。 序列化程序唯一可以做的就是调用对象的toString()方法,该方法输出className@hashCode
。
尝试这样的事情:
public class Dto {
private boolean flag;
private String code;
private String message;
private Device data;
......
}
如果不确定要用于data
字段的类,则应创建一个接口,所有这些可能的类都将从该接口扩展。
字符串jsonString = JSON.toJSONString(dto); 返回Response.status(Status.OK).entity(jsonString).build();
我现在是这样做的
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.