Java 如何基于输入REST为同一请求发送两种不同类型的JSON响应?
我是RESTAPI开发新手,我没有使用maven,我只是使用eclipse来开发它 现在我得到了一个特别的回应,比如说Java 如何基于输入REST为同一请求发送两种不同类型的JSON响应?,java,spring-mvc,Java,Spring Mvc,我是RESTAPI开发新手,我没有使用maven,我只是使用eclipse来开发它 现在我得到了一个特别的回应,比如说 { "Status_cd":"1" "status":"succ" } 上面的响应应该是在成功的情况下,我希望像这样的错误响应 { "status_cd":"0" "error":{ "Error_cd":"2131" "Message":"unable to process" } } 如何编写我的序列化类以适应同一请求的这两种响应?在RES
{
"Status_cd":"1"
"status":"succ"
}
上面的响应应该是在成功的情况下,我希望像这样的错误响应
{
"status_cd":"0"
"error":{
"Error_cd":"2131"
"Message":"unable to process"
}
}
如何编写我的序列化类以适应同一请求的这两种响应?在REST控制器中,设计endpoint方法,使其返回具有通配符参数化的对象
//Here your mapping annotation
public @ResponseBody ResponseEntity<?> getSuccessOrError() {
//Body omitted
//in case of success return new ResponseEntity(YourSuccessClass, HttpStatus)
//in case of error return new ResponseEntity(YourErrorClass, HttpStatus)
}
或者,您可以设计响应类,使其同时包含staus和error字段,并仅使用所需的值进行初始化。hi jakub我尝试使用getter和setter方法public List getError{return error;}public void setErrorList error创建两个单独的类文件{this.error=error;}public List getResponse{return response;}public void setResponseList response{this.response=response;}但我在这之后得到的响应类似于{error:null,response:[{status_cd:1,status:success}}}无论如何,谢谢你,我使用了jackson annotation@JSONIncludeINCLUDE.NON_NULL让我的东西正常工作