Java SpringREST返回带有特定http响应代码的JSON响应
我对春天很陌生。我在Spring中编写了一个RESTAPI,但我不知道如何使用自定义http响应代码返回JSON响应 我返回一个JSON响应,如下所示:Java SpringREST返回带有特定http响应代码的JSON响应,java,json,spring,rest,spring-mvc,Java,Json,Spring,Rest,Spring Mvc,我对春天很陌生。我在Spring中编写了一个RESTAPI,但我不知道如何使用自定义http响应代码返回JSON响应 我返回一个JSON响应,如下所示: public String getUser(String id){ ... return jsonObj; } 但它总是显示200个http ok状态代码 以下是我的问题: 如何同步响应JSON和HTTP代码 如何在void函数中返回JSON响应和自定义HTTP代码?使用@ResponseStatus注释: @GetMapping @Res
public String getUser(String id){
...
return jsonObj;
}
但它总是显示200个http ok状态代码
以下是我的问题:
如何同步响应JSON和HTTP代码
如何在void函数中返回JSON响应和自定义HTTP代码?使用@ResponseStatus注释:
@GetMapping
@ResponseStatus(HttpStatus.ACCEPTED)
public String getUser(String id) {...}
另一种方法:如果您想以编程方式决定返回什么状态,可以使用ResponseEntity。将方法的返回类型更改为ResponseEntity,您将获得如下DSL:
ResponseEntity
.status(NOT_FOUND)
.contentType(TEXT_PLAIN)
.body("some body");
使用@ResponseStatus注释:
@GetMapping
@ResponseStatus(HttpStatus.ACCEPTED)
public String getUser(String id) {...}
另一种方法:如果您想以编程方式决定返回什么状态,可以使用ResponseEntity。将方法的返回类型更改为ResponseEntity,您将获得如下DSL:
ResponseEntity
.status(NOT_FOUND)
.contentType(TEXT_PLAIN)
.body("some body");
我是怎么做的
下面是如何从Spring处理程序方法返回JSON。
我的技术有些过时,
但它们仍然是合理的
配置Jackson
将以下内容添加到spring配置xml文件:
<bean name="jsonView"
class="org.springframework.web.servlet.view.json.MappingJackson2JsonView">
</bean>
注释处理程序方法
您还可以使用@PostMethod注释
@PostMethod("/webServiceUri")
从处理程序方法返回ResponseEntity
调用实用程序方法来构建响应属性
不同的故事
您可以使用@JsonView注释。
有关这方面的详细信息,请查看。
浏览到ref页面并搜索@JsonView。我是如何做到的
下面是如何从Spring处理程序方法返回JSON。
我的技术有些过时,
但它们仍然是合理的
配置Jackson
将以下内容添加到spring配置xml文件:
<bean name="jsonView"
class="org.springframework.web.servlet.view.json.MappingJackson2JsonView">
</bean>
注释处理程序方法
您还可以使用@PostMethod注释
@PostMethod("/webServiceUri")
从处理程序方法返回ResponseEntity
调用实用程序方法来构建响应属性
不同的故事
您可以使用@JsonView注释。
有关这方面的详细信息,请查看。
浏览到ref页面并搜索@JsonView。我有if条件。例如,如果未找到用户,则返回404状态代码,否则返回200I have if条件。例如,如果找不到用户,请返回404状态码,否则返回200非常感谢您的详细回答!非常感谢您的详细回答!