إحدى أهم مزايا استخدام JSP هي أنه يمكنك استخدام جميع واجهات برمجة تطبيقات Java. سيصف هذا الفصل بالتفصيل فئة التاريخ في Java، والتي تتضمن التاريخ والوقت الحاليين ضمن الحزمة java.util.
تحتوي فئة التاريخ على مُنشئين. يقوم المنشئ الأول بتهيئة الكائن بالتاريخ والوقت الحاليين.
تاريخ( )يقبل المنشئ الثاني معلمة تمثل عدد المللي ثانية من الصباح الباكر في 1 يناير 1970 إلى الوقت الذي سيتم تمثيله.
التاريخ (مللي ثانية طويلة)بعد الحصول على كائن التاريخ، يمكنك استخدام كافة الطرق المذكورة في الجدول التالي:
رقم سري | الطريقة والوصف |
---|---|
1 | منطقي بعد (تاريخ التاريخ) يُرجع صحيحًا إذا كان متأخرًا عن التاريخ المحدد، وإلا فإنه يُرجع خطأ |
2 | القيمة المنطقية قبل (تاريخ التاريخ) تُرجع صحيحًا إذا كان أقدم من التاريخ المحدد، وإلا فإنها تُرجع خطأ |
3 | يحصل Object clone() على نسخة من الكائن الحالي |
4 | int CompareTo(Date date) يُرجع 0 إذا كان مساويًا للتاريخ المحدد، ورقمًا سالبًا إذا كان أقدم من التاريخ المحدد، ورقمًا موجبًا إذا كان أحدث من التاريخ المحدد |
5 | int CompareTo(Object obj) هو نفس CompareTo(Date). إذا لم يكن obj كائنًا من فئة التاريخ أو فئتها الفرعية، فسيتم طرح ClassCastException. |
6 | القيمة المنطقية يساوي (تاريخ الكائن) تُرجع صحيحًا إذا كان هو نفس التاريخ المحدد، وإلا فإنها تُرجع خطأ |
7 | تُرجع long getTime() عدد المللي ثانية من الصباح الباكر في 1 يناير 1970 إلى الوقت الذي يمثله هذا الكائن |
8 | يقوم int hashCode() بإرجاع رمز التجزئة لهذا الكائن |
9 | يستخدم void setTime(long time) المعلمات المحددة لتعيين الوقت والتاريخ. يمثل وقت المعلمة عدد المللي ثانية التي انقضت من الصباح الباكر في 1 يناير 1970 إلى الوقت. |
10 | تقوم String toString() بتحويل هذا الكائن إلى سلسلة وإرجاع هذه السلسلة |
من السهل الحصول على التاريخ والوقت الحاليين باستخدام برمجة JSP، فقط استخدم طريقة toString() لكائن التاريخ، كما يلي:
<%@ page import="java.io.*,java.util.*, javax.servlet.*" %><html><head><title>عرض التاريخ والوقت الحاليين</title></head>< body><center><h1>عرض التاريخ والوقت الحاليين</h1></center><% Date date = new Date(); out.print( "<h2 align="center">" +date.toString()+"</h2>");%></body></html>احفظ الكود أعلاه في ملف CurrentDate.jsp، ثم قم بزيارة http://localhost:8080/CurrentDate.jsp، نتائج التشغيل هي كما يلي:
عرض التاريخ والوقت الحاليMon 21 يونيو 21:46:49 GMT+04:00 2013قم بتحديث http://localhost:8080/CurrentDate.jsp، وستجد أن الثواني التي يحصل عليها كل تحديث مختلفة.
كما ذكرت في البداية، يمكنك استخدام أي طريقة Java في برنامج JSP النصي. إذا أردت المقارنة بين تاريخين،
يمكنك الرجوع إلى الطرق التالية للقيام بذلك:
استخدم طريقة getTime() للحصول على عدد المللي ثانية، ثم قم بمقارنة عدد المللي ثانية.
استخدم الأساليب قبل ()، وبعد ()، ويساوي (). على سبيل المثال، التاريخ الجديد(99,2,12).before(new Date(99,2,18)) يُرجع صحيحًا.
استخدم طريقة CompareTo()، والتي تم تعريفها في الواجهة القابلة للمقارنة وتم تنفيذها في التاريخ.
يستخدم SimpleDateFormat طريقة حساسة للغة لتنسيق التواريخ وتحليلها، مما يسمح لك باستخدام أنماط مخصصة لتنسيق التواريخ والأوقات.
قم بتعديل CurrentDate.jsp قليلاً واحصل على الكود المعدل التالي:
<%@ page import="java.io.*,java.util.*" %><%@ page import="javax.servlet.*,java.text.*" %><html><head><title >عرض التاريخ والوقت الحاليين</title></head><body><center><h1>عرض التاريخ والوقت الحاليين</h1></center><% Date dNow = new Date( ); SimpleDateFormat ft = new SimpleDateFormat ("E yyyy.MM.dd 'at' hh:mm:ss a zzz"); out.print( "<h2 align="center">" + ft.format(dNow) + "</h2>"); %></body></html>
قم بتجميع CurrentDate.jsp مرة أخرى، ثم قم بزيارة http://localhost:8080/CurrentDate.jsp، وستحصل على النتائج التالية:
عرض التاريخ والوقت الحاليالاثنين 2013.06.21 الساعة 10:06:44 مساءً بتوقيت جرينتش+04:00لتحديد سلسلة نمط، استخدم رموز التنسيق المدرجة في الجدول التالي:
شخصية | يصف | مثال |
---|---|---|
ز | معرف العصر | إعلان |
ذ | سنة مكونة من 4 أرقام | 2001 |
م | قمر | يوليو أو 07 |
د | يوم | 10 |
ح | ساعة بنظام 12 ساعة، صباحًا/مساءًا (1~12) | 12 |
ح | 24 ساعة على مدار الساعة | إثنان وعشرون |
م | دقيقة | 30 |
ق | ثانية | 55 |
س | ميلي ثانية | 234 |
ه | أسبوع | يوم الثلاثاء |
د | يوم من السنة | 360 |
ف | يوم من أيام الأسبوع في شهر | 2 (الأربعاء الثاني في يوليو) |
ث | أسبوع من السنة | 40 |
دبليو | اسبوع معين من الشهر | 1 |
أ | علامة صباحا/مساءا | مساءً |
ك | ساعة من اليوم (1~24) | أربعة وعشرون |
ك | ساعة اليوم، صباحًا/مساءًا (0~11) | 10 |
ض | المنطقة الزمنية | التوقيت الشرقي القياسي |
' | فاصل النص | محدد |
" | اقتباس واحد | ` |
للحصول على معلومات أكثر تفصيلاً حول فئة التاريخ، يرجى الرجوع إلى وثائق Java API.