Spring Framework

org.springframework.web.servlet.mvc
Interface LastModified

All Known Implementing Classes:
MultiActionController

public interface LastModified

Supports last-modified HTTP requests to facilitate content caching. Same contract as for the Servlet API's getLastModified method.

Delegated to by a HandlerAdapter.getLastModified(javax.servlet.http.HttpServletRequest, java.lang.Object) implementation. By default, any Controller or HttpRequestHandler within Spring's default framework can implement this interface to enable last-modified checking.

Note: Alternative handler implementation approaches have different last-modified handling styles. For example, Spring 2.5's annotated controller approach (using @RequestMapping) provides last-modified support through the WebRequest.checkNotModified(long) method, allowing for last-modified checking within the main handler method.

Author:
Rod Johnson, Juergen Hoeller
See Also:
HttpServlet.getLastModified(javax.servlet.http.HttpServletRequest), Controller, SimpleControllerHandlerAdapter, HttpRequestHandler, HttpRequestHandlerAdapter

Method Summary
 long getLastModified(javax.servlet.http.HttpServletRequest request)
          Same contract as for HttpServlet's getLastModified method.
 

Method Detail

getLastModified

long getLastModified(javax.servlet.http.HttpServletRequest request)
Same contract as for HttpServlet's getLastModified method. Invoked before request processing.

The return value will be sent to the HTTP client as Last-Modified header, and compared with If-Modified-Since headers that the client sends back. The content will only get regenerated if there has been a modification.

Parameters:
request - current HTTP request
Returns:
the time the underlying resource was last modified, or -1 meaning that the content must always be regenerated
See Also:
HandlerAdapter.getLastModified(javax.servlet.http.HttpServletRequest, java.lang.Object), HttpServlet.getLastModified(javax.servlet.http.HttpServletRequest)

Spring Framework