Una de las ventajas más importantes de utilizar JSP es que puede utilizar todas las API de Java. Este capítulo describirá en detalle la clase Date en Java, que encapsula la fecha y hora actuales en el paquete java.util.
La clase de fecha tiene dos constructores. El primer constructor inicializa el objeto con la fecha y hora actuales.
Fecha( )El segundo constructor acepta un parámetro, que representa el número de milisegundos desde la madrugada del 1 de enero de 1970 hasta el momento a representar.
Fecha (milisegundos largos)Después de obtener el objeto Date, puede utilizar todos los métodos enumerados en la siguiente tabla:
número de serie | Método y descripción |
---|---|
1 | booleano después (fecha) devuelve verdadero si es posterior a la fecha indicada; de lo contrario, devuelve falso |
2 | booleano antes (fecha) devuelve verdadero si es anterior a la fecha dada; de lo contrario, devuelve falso |
3 | Object clone() obtiene una copia del objeto actual |
4 | int compareTo(Date date) devuelve 0 si es igual a la fecha dada, un número negativo si es anterior a la fecha dada y un número positivo si es posterior a la fecha dada |
5 | int compareTo(Object obj) es lo mismo que compareTo(Date). Si obj no es un objeto de la clase Date o su subclase, se lanza una ClassCastException. |
6 | booleano es igual (fecha del objeto) devuelve verdadero si es la misma que la fecha dada; de lo contrario, devuelve falso |
7 | long getTime() devuelve el número de milisegundos desde la madrugada del 1 de enero de 1970 hasta el momento representado por este objeto |
8 | int hashCode() devuelve el código hash de este objeto |
9 | void setTime(long time) utiliza los parámetros dados para establecer la hora y la fecha. El parámetro time representa el número de milisegundos que han transcurrido desde la madrugada del 1 de enero de 1970 hasta la hora. |
10 | String toString() convierte este objeto en una cadena y devuelve esta cadena |
Es fácil obtener la fecha y hora actuales usando la programación JSP. Simplemente use el método toString() del objeto Date, como el siguiente:
<%@ page import="java.io.*,java.util.*, javax.servlet.*" %><html><head><title>Mostrar fecha y hora actuales</title></head>< body><center><h1>Mostrar fecha y hora actuales</h1></center><% Fecha fecha = nueva Fecha() out.print( "<h2 align="center">" +fecha.toString()+"</h2>");%></body></html>Guarde el código anterior en el archivo CurrentDate.jsp y luego visite http://localhost:8080/CurrentDate.jsp. Los resultados de la ejecución son los siguientes:
Mostrar fecha y hora actuales Lun 21 de junio 21:46:49 GMT+04:00 2013Actualice http://localhost:8080/CurrentDate.jsp y encontrará que los segundos obtenidos por cada actualización son diferentes.
Como mencioné al principio, puedes usar cualquier método Java en un script JSP. Si quieres comparar dos fechas,
Puede consultar los siguientes métodos para hacerlo:
Utilice el método getTime() para obtener la cantidad de milisegundos y luego compare la cantidad de milisegundos.
Utilice los métodos antes(), después(), igual a(). Por ejemplo, nueva Fecha(99,2,12).antes(nueva Fecha(99,2,18)) devuelve verdadero.
Utilice el método compareTo(), que se define en la interfaz Comparable y se implementa en Date.
SimpleDateFormat utiliza una forma sensible a la configuración regional para formatear y analizar fechas, lo que le permite usar patrones personalizados para formatear fechas y horas.
Modifique CurrentDate.jsp ligeramente y obtenga el siguiente código modificado:
<%@ página import="java.io.*,java.util.*" %><%@ página import="javax.servlet.*,java.text.*" %><html><head><title >Mostrar fecha y hora actuales</title></head><body><center><h1>Mostrar fecha y hora actuales</h1></center><% Fecha dNow = nueva Fecha( ); formato de fecha simple ("E yyyy.MM.dd 'at' hh:mm:ss a zzz"); out.print( "<h2 align="center">" + ft.format(dNow) + "</h2>"); %></body></html>
Compile CurrentDate.jsp nuevamente y luego visite http://localhost:8080/CurrentDate.jsp. Obtendrá los siguientes resultados:
Mostrar fecha y hora actuales Lun 2013.06.21 a las 10:06:44 p. m. GMT+04:00Para especificar una cadena de patrón, utilice los códigos de formato que aparecen en la siguiente tabla:
personaje | describir | Ejemplo |
---|---|---|
GRAMO | identificador de era | ANUNCIO |
y | año de 4 dígitos | 2001 |
METRO | luna | julio o 07 |
d | día | 10 |
h | Reloj de 12 horas, AM/PM (1~12) | 12 |
h | reloj de 24 horas | Veintidós |
metro | minuto | 30 |
s | Segundo | 55 |
S | milisegundo | 234 |
mi | Semana | Martes |
D | dia del año | 360 |
F | un día de la semana en un mes | 2 (segundo miércoles de julio) |
w | semana del año | 40 |
W. | una cierta semana del mes | 1 |
a | Marca AM/PM | P.M |
k | Una hora del día (1~24) | veinticuatro |
k | Hora del día, AM/PM (0~11) | 10 |
z | huso horario | Hora estándar del este |
' | separador de texto | Delimitador |
" | comillas simples | ` |
Para obtener información más detallada sobre la clase Date, consulte la documentación de la API de Java.