gpt4 book ai didi

spring-mvc - 在注释驱动的Spring MVC中动态更改@ResponseStatus

转载 作者:行者123 更新时间:2023-12-03 08:47:56 26 4
gpt4 key购买 nike

我真的不确定使用Spring 3.2 MVC是否可行。

我的 Controller 有一个声明如下的方法:

@RequestMapping(method = RequestMethod.GET)
@ResponseStatus(HttpStatus.OK)
public @ResponseBody List<Foo> getAll(){
return service.getAll();
}

问题:
  • @ResponseStatus(HttpStatus.OK)是什么意思?
  • 是否表示该方法将始终返回HttpStatus.OK状态码。
  • 如果从服务层引发异常怎么办?
  • 是否可以在发生任何异常时更改响应状态?
  • 如何根据条件在同一方法中处理多个响应状态?
  • 最佳答案

    @ResponseStatus(HttpStatus.OK)表示如果处理方法正常返回,则请求将返回OK(此注释在这种情况下是多余的,因为默认响应状态为HttpStatus.OK)。如果处理程序引发异常,则注释不适用。

    How can I handle multiple response statuses depending on conditions in the same method?



    这个问题 has already been asked

    Can I change the Response Status on occurrence of any exception



    您有两种选择。如果异常类是您自己的异常类,则可以使用 @ResponseStatus注释异常类。另一种选择是为 Controller 类提供一个带有 @ExceptionHandler注释的异常处理程序,并让异常处理程序设置响应状态。

    关于spring-mvc - 在注释驱动的Spring MVC中动态更改@ResponseStatus,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17526787/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com