2015-04-07 120 views
1

我想最简单的春天启动的应用程序就像...简单的弹簧引导应用程序 - HttpServletResponse的需要

@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启动应用程序的HttpServletResponse的最佳方式?

回答

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

+1

@Path是JAX-RS注释,因此RequestMapping是Spring应用程序的必要注释。 – dunni

相关问题