Mostrando las entradas con la etiqueta calendar. Mostrar todas las entradas
Mostrando las entradas con la etiqueta calendar. Mostrar todas las entradas

jueves, 14 de abril de 2016

Guardar fecha Date en MySQL desde JAVA

Les presento ahora la versión 2.1.2 de mi proyecto de ejemplo que realizo en java. Debo aclarar que este proyecto únicamente lo desarrollo para todos aquellos que se estén iniciando en java. Está por demás decir, que existen muchas maneras que programar los métodos que yo utilizo, algunos nos complicamos más, otros lo simplifican, así que las ideas presentadas aquí, son simplemente, una manera más de cómo realizar dichos métodos.

En ésta versión se tiene:
[v2.1.2]
  1. Guardado de fechas en mysql
  2. Recuperación de las fechas y colocadas en una tabla
  3. Colocado de fechas en un JDateChooser
[v2.0.1]
  1. Guardado de contraseñas encriptadas en md5 en mysql
  2. Validación de usuarios a través de la contraseña encriptadas
[v2.0.0]
  1. SplashScreen con barra de progreso modificable.
  2. Respaldar la base de datos
  3. Restaurar la base de datos
  4. Modificar la información del usuario en configuración de la cuenta.
[v1.0.0]
  1. Login.
  2. Creación de usuarios.
  3. Detección al presionar enter: es decir, que cuando se presiona enter en un cuadro de texto automáticamente se ejecuta la acción correspondiente.
  4. Altas, bajas, modificaciones, busquedas en la BD.
  5. Uso de JDialog.
  6. Búsqueda datos mientras se escribe: es decir, se van filtrando los registros al escribir.
  7. Detección de la tecla scape: es decir, en algunas ventanas, se detecta la tecla scape, para indicar que se cancela la edición o modificación.
  8. Uso de ícono para la aplicación.
  9. Deshabilitar la opción del botón cerrar.
  10. Uso de abrir y regresar a otro jframe..
  11. Uso de clases.
  12. Uso de objetos completos.
  13. Manipulación de objetos como registros.
  14. Incluye Script de la BD. 

 Descripción de los cambios principales:

Las fechas en java, de un jdate chooser, se pueden obtener en formato long, es decir, en dígitos númericos muy largos.
Algo así: 1460696400000, esto a su vez, se puede convertir a texto y guardarlo como una cadena en la base de datos. Al momento de extraerlo de nuevo, se convierte a long y se le envía como parámetro al método settime de un objeto date.

La verdad, no sé si sea esta la manera correcta de guardar la fecha en mysql, sin embargo me pareció muy fácil de utilizarlo de esta forma.

Además, en este mismo formato, también se le puede asignar a un JDateChooser.

Métodos principales:

Para obtener la fecha en formato cadena de un obejto JDateChooser, se hace lo siguiente:

String fecha:
fecha= Long.toString(jdateFechaEvento.getDate().getTime());

Ahora que ya se tiene la fecha en un formato de texto, ésta, ya se puede enviar a un método que la guarde en mysql.

Obtener la fecha de mysql y pasarla a un formato de fecha, por ejemplo a este "2/4/2016", el proceso es el siguiente:

Date fechaEvento = new Date(); //se crea e inicializa un objeto de tipo Date
Calendar c; //Se crea un objeto de tipo calendar
String fecha; //la cadena en la que se guardará la fecha
/*Este proceso, es en realidad el while de la consulta que se realiza a la base de datos, para entenderlo mejor, descargar el ejemplo completo. Pero básicamente lo que se hace es, obtener la fecha en formato String, convertirla a long y asignarla al objeto tipo Date, usando el método setTime, el cual recibe un long*/
fechaEvento.setTime(Long.parseLong(temp.getFecha_evento()));
c = Calendar.getInstance(); //se obtiene una instancia de calendar, con la fecha actual.
c.setTime(fechaEvento); //se le asigna a calendar la fecha obtenida de la base de datos.
/*Se asigna a la cadena el formato deseado manualmente, este formato también se puede obtener de manaera más fácil con getdateformat, pero quise hacerlo de este modo*/
fecha = Integer.toString(c.get(Calendar.DATE))+"/"+
Integer.toString(c.get(Calendar.MONTH))+ "/"+Integer.toString(c.get(Calendar.YEAR));

Bueno, sin más, pueden descargarlo desde aquí:


Gracias por visitar.

miércoles, 30 de julio de 2014

Obtener fecha del sistema y colocarlo en un JDateChooser Java

Recientemente me fue necesario obtener la fecha del sistema para colocarlo en un JDateChooser, con la finalidad de que la fecha no fuera null, ya que eso puede causar excepciones cuando se intente obtener la fecha de un JDateChooser en caso de que no haya fecha seleccionada.
Para agregar el JCalendar a la paleta seguir este tutorial 
La interfaz que se crea es sencilla, es la siguiente:

Previo a esto, es necesario agregar un jar llamado jcalendar, tal y como se ve en la imagen de abajo:


Es un JFrame que contiene una JLabel y un JDateChooser. Todo lo que hay que hacer es agregar lo siguiente el constructor que trae por el default.

public FechasJdate() {
        initComponents();
        Calendar c2 = new GregorianCalendar();
        jDateChooser1.setCalendar(c2);
}

Ahora a ejecutar el paquete y listo. Cuando inicie el programa automáticamente la fecha del día se mostrará en el JDateChooser

El ejemplo lo pueden descargar de aquí: https://mega.nz/#!DFg0mLRT!AsMvgh4DX3QDklgKRBKL0b-rohPgriekVBTEmaRTenw

Agregar un JCalendar a la paleta de componentes de netbeans

Para poder arrastrar y soltar componentes de tipo calendarios, selección de año, mes o día, es mejor usar JCalendar y así evitar validar fechas por separado. Los componentes que ofrece JCalendar son las siguientes:

Antes de comenzar, es necesario descargar el jar de aquí en caso de que el link ya no esté disponible, por favor tendrán que buscarlo por su cuenta.
Después de descargarlo es necesario agregar a su editor favorito, en mi caso lo agregaré a netbeans, es solo por comodidad, para que los componentes del jar lo puedan ver desde la paleta gráfica de opciones que presenta netbeans, usaré la versión 8.0.
Paso uno: abrir netbeans
Paso dos: ir a menú tools o herramientas según sea el idioma que usen, seleccionar palette y luego Swing/AWT Components. Como se muestra en la imagen de abajo.
Paso tres: cuando le den clic les abrirá la siguiente ventana: en dicha ventana hay que agregar una nueva categoría esto en caso de que quieran que el nuevo jar que se agregará tenga su propia categoría, o bien, lo pueden agregar en una ya existente.
Para agregar una nueva categoría dar clic sobre el botón New Category y luego aparecerá una ventana en la que capturan el nombre y clic en aceptar, después le dan en Add from JAR y buscan el jar que descargaron, a continuación seleccionan la categoría en la que quieran agregarlo y listo. Podrán ver su nueva categoría de la siguiente manera.

Y listo eso es todo lo que se necesita para poder realizar un arrastrar y soltar con componentes, en general es así para todo tipo de jars de swing.