English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

تحديث تلقائي في JSP

تخيل أن كنت تريد بث نتيجة المباراة أو حالة السوق المالية أو توزيع العملات الأجنبية الحالية، كيف يمكنك تحقيق ذلك؟ من الواضح أنك ستحتاج إلى تحديث الصفحة بانتظام لتحقيق هذه الميزة في الوقت الحقيقي.

يقدم JSP ميكانيكية تجعل هذه العملية أسهل، حيث يمكن تحديث الصفحة تلقائيًا في أوقات محددة.

أبسط طريقة لتحديث الصفحة هي استخدام طريقة setIntHeader() من كائن response. وتعيين اسم الطريقة كالتالي:

public void setIntHeader(String header, int headerValue)

هذه الطريقة تُخبر المتصفح عن تحديث الصفحة بعد وقت معين، ويتم قياس الوقت بالثواني.

مثال على برنامج تحديث الصفحة تلقائيًا

هذا المثال يستخدم طريقة setIntHeader() لضبط رأس التحديث، لمحاكاة ساعة رقمية:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<html>
<head>
<title>مثال تحديث تلقائي</title>
</head>
<body>
<h2>تحديث تلقائي</h2>
<%
   // إعداد تحديث كل 5 ثواني
   response.setIntHeader("Refresh", 5);
   // الحصول على الوقت الحالي
   Calendar calendar = new GregorianCalendar();
   String am_pm;
   int hour = calendar.get(Calendar.HOUR);
   int minute = calendar.get(Calendar.MINUTE);
   int second = calendar.get(Calendar.SECOND);
   if(calendar.get(Calendar.AM_PM) == 0)
      am_pm = "AM";
   else
      am_pm = "PM";
   String CT = hour+":"+ minute +":"+ second +" "+ am_pm;
   out.println("الوقت الحالي هو: " + CT + "\n");
%>
</body>
</html>

قم بإنشاء ملف main.jsp وحفظه، ثم استعرضه. سيقوم بتحديث الصفحة كل 5 ثواني للحصول على الوقت الحالي. النتيجة ستكون كالتالي:

تحديث تلقائي
الوقت الحالي هو: 6:5:36 مساءً

يمكنك أيضًا كتابة برنامج أكثر تعقيدًا بنفسك.