Latest web development tutorials

Servlet Date de traitement

L'un des avantages les plus importants de l'utilisation de servlets qui peuvent être utilisés dans la plupart des principaux procédés Java disponibles. Ce chapitre expliquele package java.utilfourni par JavaDatede classe qui encapsule la date et l' heure.

Date de classe prend en charge deux constructeurs. Le premier constructeur pour initialiser l'objet de la date et l'heure actuelle.

Date( )

Le constructeur suivant accepte un paramètre qui est égal au nombre de millisecondes écoulées depuis le 1er Janvier 1970 à minuit.

Date(long millisec)

Une fois que vous avez un objet Date disponible, vous pouvez appeler l'une des façons suivantes pour utiliser le soutien Date:

序号方法 & 描述
1boolean after(Date date)
如果调用的 Date 对象中包含的日期在 date 指定的日期之后,则返回 true,否则返回 false。
2boolean before(Date date)
如果调用的 Date 对象中包含的日期在 date 指定的日期之前,则返回 true,否则返回 false。
3Object clone( )
重复调用 Date 对象。
4int compareTo(Date date)
把调用对象的值与 date 的值进行比较。如果两个值是相等的,则返回 0。如果调用对象在 date 之前,则返回一个负值。如果调用对象在 date 之后,则返回一个正值。
5int compareTo(Object obj)
如果 obj 是 Date 类,则操作等同于 compareTo(Date)。否则,它会抛出一个 ClassCastException。
6boolean equals(Object date)
如果调用的 Date 对象中包含的时间和日期与 date 指定的相同,则返回 true,否则返回 false。
7long getTime( )
返回 1970 年 1 月 1 日以来经过的毫秒数。
8int hashCode( )
为调用对象返回哈希代码。
9void setTime(long time)
设置 time 指定的时间和日期,这表示从 1970 年 1 月 1 日午夜以来经过的时间(以毫秒为单位)。
10String toString( )
转换调用的 Date 对象为一个字符串,并返回结果。

Obtient la date et l'heure

Obtient la date et l'heure actuelle dans le Servlet Java est très facile. Vous pouvez utiliserle toStringd'un seul objet Date()pour la sortie de la date et l' heure comme suit:

package com.w3big.test;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Date;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class CurrentDate
 */
@WebServlet("/CurrentDate")
public class CurrentDate extends HttpServlet {
	private static final long serialVersionUID = 1L;
   
	public CurrentDate() {
		super();
	}
    
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

		response.setContentType("text/html;charset=UTF-8");
		PrintWriter out = response.getWriter();
  		String title = "显示当前的日期和时间";
		Date date = new Date();
		String docType = "<!DOCTYPE html> \n";
		  out.println(docType +
		    "<html>\n" +
			"<head><title>" + title + "</title></head>\n" +
			"<body bgcolor=\"#f0f0f0\">\n" +
			"<h1 align=\"center\">" + title + "</h1>\n" +
			"<h2 align=\"center\">" + date.toString() + "</h2>\n" +
			"</body></html>");
	}

}

Maintenant, nous allons compiler les Servlet ci-dessus, et de créer l'entrée appropriée dans le fichier web.xml:

<?xml version="1.0" encoding="UTF-8"?>
<web-app>
  <servlet>
    <servlet-name>CurrentDate</servlet-name>
    <servlet-class>com.w3big.test.CurrentDate</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>CurrentDate</servlet-name>
    <url-pattern>/TomcatTest/CurrentDate</url-pattern>
  </servlet-mapping>
</web-app>

Ensuite, visitez le site http: appeler le Servlet 8080 / TomcatTest / CurrentDate: // localhost. Ceci va produire les résultats suivants:

Essayez de rafraîchir l'URL http: // localhost: 8080 / TomcatTest / CurrentDate, actualisez chaque différence de quelques secondes, vous trouverez un temps d'affichage.

Comparer les dates

Comme mentionné ci-dessus, vous pouvez utiliser toutes les méthodes Java disponibles dans un Servlet. Si vous avez besoin de comparer deux dates sont les méthodes suivantes:

  • Vous pouvez utiliser le getTime () pour obtenir les deux objets, depuis le 1er Janvier, 1970 à minuit temps écoulé (en millisecondes), ces deux valeurs.
  • Vous pouvez utiliser la méthode avant (), après () et equals (). Depuis le 12 jusqu'au 18, par exemple, new Date (99, 2, 12) .avant (new Date (99, 2, 18)) renvoie le mois vrai.
  • Vous pouvez utiliser la méthode compareTo (), qui est définie par l'interface Comparable par date réalisent.

L'utilisation SimpleDateFormat aux dates de format

SimpleDateFormat est une classe concrète dans une mise en forme de manière locale sensible et les dates d'analyse syntaxique. SimpleDateFormat vous permet de sélectionner une date et l'heure modèle de formatage défini par l'utilisateur.

Modifions l'exemple ci-dessus, comme suit:

package com.w3big.test;

import java.io.IOException;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * Servlet implementation class CurrentDate
 */
@WebServlet("/CurrentDate")
public class CurrentDate extends HttpServlet {
	private static final long serialVersionUID = 1L;
   
	public CurrentDate() {
		super();
	}
    
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

		response.setContentType("text/html;charset=UTF-8");
		
		PrintWriter out = response.getWriter();
		String title = "显示当前的日期和时间";
		Date dNow = new Date( );
		SimpleDateFormat ft = 
				new SimpleDateFormat ("yyyy.MM.dd  hh:mm:ss E a ");
		String docType = "<!DOCTYPE html> \n";
		out.println(docType +
	        "<html>\n" +
	        "<head><title>" + title + "</title></head>\n" +
	        "<body bgcolor=\"#f0f0f0\">\n" +
	        "<h1 align=\"center\">" + title + "</h1>\n" +
	        "<h2 align=\"center\">" + ft.format(dNow) + "</h2>\n" +
	        "</body></html>");
	}

}

Compiler le précédent Servlet à nouveau, puis visiter http: pour appeler le Servlet 8080 / TomcatTest / CurrentDate: // localhost. Ceci va produire les résultats suivants:


Date simple format de code de format

Utilisation de la chaîne de mode Événement pour spécifier le format de l'heure. Dans ce mode, toutes les lettres ASCII sont réservés sous forme de lettres de motif, et les lettres sont définies comme suit:

caractère description Exemples
sol Indicateur de Era AD
y Quatre ans de chiffres 2001
M Mois de l'année Ou Juillet 07
Les premiers jours du mois 10
h AM / PM, de l'heure (1 à 12) 12
H Les premières heures de la journée (0 à 23) 22
m Une heure de la première fraction 30
s Un point dans les premières secondes 55
S Millisecond 234
E La semaine de la semaine mardi
Les premiers jours de l'année 360
fa Semaine est la semaine où ce mois-ci 2 (deuxième mercredi en Juillet)
w Les premières semaines de l'année 40
W Les premières semaines de Janvier 1
un AM / PM marque PM
k Les premières heures du jour (1 à 24) 24
K Avec AM / PM heure (0 à 11) 10
z fuseau horaire Heure normale de l'Est
' Échapper pour le texte Séparateur
" Les guillemets simples `

Pour une liste complète des méthodes de date de traitement disponibles pour voir, vous pouvez vous référer à la documentation de Java standard.