2015-04-07 151 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

相關問題