【问题标题】:Is there in spring mvc abstractions over HttpServletResponse?spring mvc 中是否存在基于 HttpServletResponse 的抽象?
【发布时间】:2014-12-01 09:51:48
【问题描述】:

当我使用 spring mvc 时,我不使用 raw HttpServletRequest。而不是这个,我使用Model

有没有类似的方法可以避免使用HttpServletResponse

【问题讨论】:

    标签: java spring-mvc servlets model httpresponse


    【解决方案1】:

    我不确定我是否明白你的问题。

    Spring MVC 会从控制器方法返回的任何内容以及异常处理程序(如果该方法引发业务异常)、拦截器、HttpMessageConverters 等中派生 HttpServletResponse。也许 Spring MVC 参考文档的一半涉及到这一点。

    也许看看supported method return types in Controllers 会回答你的问题?

    此外,您的 Controller 方法可以返回 ResponseEntity<?> 类型,您可以像这样使用它:

    @Controller
    public class MyController {
    
      @RequestMapping("/test")
      public ResponseEntity<String> test() {
        return ResponseEntity.status(HttpStatus.OK).header("X-Foo", "Bar").body("Hello World!");
      }
    
      @RequestMapping(value= "/other", produces = "application/json")
      public ResponseEntity<User> other() {
        User user = new User("firstName", "lastName");
        // here, Spring MVC will use a configured HttpMessageConverter to convert your model
        // instance to JSON, for example
        return ResponseEntity.status(HttpStatus.OK).body(user);
      }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-17
      • 1970-01-01
      • 1970-01-01
      • 2021-06-22
      • 1970-01-01
      • 2011-09-21
      • 2019-02-06
      • 1970-01-01
      相关资源
      最近更新 更多