简单的Spring Boot应用程序 - 需要HttpServletResponse

时间:2015-04-07 10:05:32

标签: spring servlets spring-boot

我想要最简单的弹簧启动应用程序,如...

@Path("/")
@Component
public class RestResource {

    @GET
    @Produces(MediaType.APPLICATION_JSON)
    @Path("/hello")
    public String hello() {
        return "Hello World";
    }
}

我想构建一个REST应用程序,我需要HttpServletResponse,因为我想检查一些条件然后再进行重定向。

@Context
private HttpServletResponse servletResponse;

...

if (...)
    servletResponse.setStatus(HttpServletResponse.SC_BAD_REQUEST);
    servletResponse.sendRedirect(...);
else
    servletResponse.setStatus(HttpServletResponse.XYZ);
    servletResponse.sendRedirect(...);

在Spring Boot应用程序中获取HttpServletResponse的最佳方法是什么?

1 个答案:

答案 0 :(得分:3)

如果您需要HttpServletResponse,则可以执行以下操作。

@RequestMapping("/urlmapping") 
public String method(HttpServletResponse response){

  .....

  if (...)
    response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
    response.sendRedirect(...);
  else
    response.setStatus(HttpServletResponse.XYZ);
    response.sendRedirect(...);

  .....

}

在上面的示例中,将注入HttpServletResponse对象。

在我使用@RequestMapping的示例中,它也适用于@Path