programming-examples/java/Servlets_Session_Swing_Util/Updating the client cache.java
2019-11-15 12:59:38 +01:00

51 lines
1.3 KiB
Java

Updating the client cache
package com.ack.web.servlet;
import java.io.IOException;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class UpdatingTheClientCache extends HttpServlet {
private Date lastUpdate;
public void init() {
lastUpdate = new Date( System.currentTimeMillis() );
}
/**
* This will see the server stuffing the Last-Modified header
* into the response that is used by the client during
* page reloads to check whether content on the server has
* changed.
*
* Refer to how the If-Modified-Since and Last-Modified
* headers used within the HTTP protocol
*
*/
public long getLastModified( HttpServletRequest req ) {
// round time down to the last second
return lastUpdate.getTime() / 1000 * 1000;
}
public void doGet( HttpServletRequest req, HttpServletResponse res )
throws ServletException, IOException {
boolean needToUpdate = false;
// process some work
if( needToUpdate ) {
synchronized( this ) {
lastUpdate = new Date( System.currentTimeMillis() );
}
}
res.getWriter().println( "done some work" );
}
}