🚀 Master Java Servlets & Web Development!
Subscribe to Ram N Java for clean, beginner-friendly coding tutorials and practical web architecture guides!
👉 Click Here to Subscribe NowWhat is Page Auto Refresh in Java Servlets?
In web applications displaying live statistics, stock prices, sports scores, or dynamic server clocks, you often want the browser to automatically reload the page at a fixed time interval without any user intervention.
In Java Servlets, you can accomplish automatic page reloading on the client side using the standard HTTP response header named Refresh via response.setIntHeader().
How the Refresh Header Works
When the servlet sends an HTTP response containing the Refresh header, it informs the browser to wait for a specified number of seconds before re-requesting the current URL:
response.setIntHeader("Refresh", 5);
Every 5 seconds, the browser will automatically issue a fresh GET request to the same servlet, fetching and rendering the most up-to-date data.
Complete Servlet Example: Live Digital Clock
Here is a complete, beginner-friendly example of an auto-refreshing digital clock servlet:
public class AutoRefreshServlet extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// Set the refresh interval in seconds
response.setIntHeader("Refresh", 1);
response.setContentType("text/html");
PrintWriter out = response.getWriter();
// Get current system time
Calendar calendar = new GregorianCalendar();
String am_pm = calendar.get(Calendar.AM_PM) == 0 ? "AM" : "PM";
String currentTime = calendar.get(Calendar.HOUR) + ":" +
calendar.get(Calendar.MINUTE) + ":" +
calendar.get(Calendar.SECOND) + " " + am_pm;
out.println("<h2>Auto Refreshing Page Demo</h2>");
out.println("<p>Current Time: <strong>" + currentTime + "</strong></p>");
}
}
Bonus: Refresh and Redirect to Another URL
You can also use the Refresh header to pause for a few seconds before redirecting the client to a different URL using setHeader():
response.setHeader("Refresh", "5; URL=https://www.youtube.com/@ramnjava");
Key Best Practices
- Choose Appropriate Intervals: Refreshing too quickly (e.g., sub-second intervals) creates unnecessary server load and bandwidth usage.
- Set Before Writing: Always set response headers before committing the response or flushing the output stream.
- Alternative Modern Options: While HTTP Refresh headers are fast and require zero JavaScript, modern interactive apps often use AJAX, WebSockets, or Server-Sent Events (SSE) for partial page updates.
📺 Related HTTP & Response Handling Tutorials
Explore more response handling and HTTP concept tutorials from our channel:
Click here to watch in Youtube : https://www.youtube.com/watch?v=S0Z04k6r61A
Click the below Image to Enlarge
PageAutoRefresh Project Dir Structure
PageRefreshServlet.java
No comments:
Post a Comment