Está usted en Indice > Construcción > Lenguajes > Java > Lecciones y Paso a Paso > La fecha en un JSP
Construcción
Maletín
Utilidades
Cursos
Promoción
Rentabilidad
Zona Novatos
Foros
Acceso a tu cuenta

La fecha en un JSP

Una de las cosas más frecuentes en las páginas dinamicas es que te muestren la fecha actual. Algunas incluso te muestran un saludo dependiendo del día de la semana o el mes en el que te encuentres.

En las primeras versiones el manejo de fechas pasaba exclusivamente por el uso de la clase java.util.Date, pero a partir de la versión JDK 1.1 fueron añadidas nuevas funcionalidades en otras clases de apoyo como Calendar, TimeZone, Locale y DateFormat y descargando de funcionalidad a la clase Date, si bien, sigue siendo la clase base para el uso de fechas.

Para marcar un limite entre las dos clases podríamos decir que Date representa un momento especifico del tiempo en milisegundos, mientras que Calendar nos permite obtener número enteros que especifican el dia, mes, año, hora,... de dicha fecha. Es decir, lo que eran los antiguos metodos de .getDay(), .getMonth(),....

Para llevar a buen puerto nuestro ejemplo, una página JSP que nos muestre la fecha y hora, lo primero que vamos a realizar es obtener una instancia de la clase Calendar mediante el metodo .getInstance(). Esto nos devolverá un calendario con los valores por defecto establecidos en nuestra maquina en cuanto a hora y formato.

Una vez que tengo la instancia del calendario me bastara con ir obteniendo los valores que me interesen mediante el método get(). Dicho metodo admite como parametros una serie de constantes definidas en la clase Calendar que representar el día, mes, año,... Estas cosntantes son Calendar.DATE, Calendar.MONTH, Calendar.YEAR, ....

Ademas tenemos otra serie de constantes que nos permiten saber si la fecha que manejamos es un dia u otro, un mes u otro. Estas constantes son Calendar.FRIDAY,Calendar.MONDAY,... para los dias, Calendar.JUNE,Calendar.NOVEMBER,... para los meses,...

java.util.Calendar fecha = java.util.Calendar.getInstance();
out.println(fecha.get(java.util.Calendar.DATE) + "/" + fecha.get(java.util.Calendar.MONTH) + "/" + fecha.get(java.util.Calendar.YEAR));

Como hemos podido comprobar, mediante la clase Calendar, unicamente podemos mostrar los valores enteros del dia, mes y año. Si queremos mostrar las fechas en otro formato como 18-Nov-2002, 18 de noviembre de 2002,... deberemos de usar un formateador de fechas mediante la clase DateFormat.

A si que los pasos a seguir son: primero obtener una instancia del calendario, como acabamos de ver. Segundo obtener la fecha actual del calendario. Esto lo hacemos mediante el metodo getTime.

Date fecha = calendario.getTime();

Una vez tenemos la fecha actual deberemos de instanciarnos el formateador. La instancia la obtendremos de la misma forma que obtubimos la instancia del calendario, mediante un metodo getInstance().

DateFormat formateador = DateFormar.getInstance();

Este metodo nos permite pasarle un estilo de formato. Dentro de los estilos tenemos:

  • SHORT, totalmente numerico (18/11/02 O 9:01)
  • MEDIUM, formato largo (18-nov-02 O 9:00:20)
  • LONG, otro formato largo (18 de noviembre de 2002 O 9:02:12 GMT+01:00)
  • FULL, con la especificación completa (lunes 18 de noviembre de 2002 O 09H03' GMT+01:00)



Autor: Aulambra
http://www.aulambra.com/ver.asp?id=113

Usuarios que han visto este tema también han visto...

- Deshabilitar todos los componentes incluidos en un Container Swing en Java
- Creación de nuestro propio servidor web
- Descompilar codigo Java
- Instalar y utilizar las herramientas de Silverlight para Java
- Crear tu Primer Applet


Versión imprimible - Versión imprimible de este documento
Enviar e-mail - Enviar por e-mail este documento
Publicidad






Publicidad








Información legal | Política de Privacidad | Contacte con nosotros

Otro proyecto de Factoría de Internet. Copyright© 2003-2011 Factoría de Internet S.L.. Todos los derechos reservados.


Página generada el 20-01-2017 a las 06:35:59