INSERTAR FECHA EN MySQL DESDE JAVA

*  te envio el codigo completo con las nuevas modificaciones compilado en Netbeans 8.2
 *  -----------------------------------
 *  Creo el proyecto con el nombre PruebaFecha
 *  elimino la clase que me crea por defecto. PruebaFecha.java
 *  -----------------------------------
 *  Agrego dos objetos nuevos al proyecto:
 *  ConexionMySQL.java                           conexion base de datos Mysql. test  Tabla. prueba
 *  PruebaFechas.java                             Jframe
 *
 *  ----------------------------------- Jframe
 *  0. mysql-connector-java-5.1.18-bin.jar      copiar la libreria en la carpeta lib de mi projecto ...\lib\
 *  0. jcalendar-1.4.jar                             copiar la libreria en la carpeta lib de mi projecto ...\lib\
 *  0. Agregar las librerias a mi projecto         package Libraries
 *
 *  1. import com.mysql...                               al copiar el metodo PruebaFecha me importa las librerias
 *                                                                    para la conexion a la base de datos Mysql
 *     import javax.swing.JOptionpane            libreria para cuadro de mensajes en pantalla
 *     import java.text.SimpleDateFormat        libreria para formatos de fecha al agregar la linea
 *                                              SimpleDateFormat formatofecha = new SimpleDateFormat("yyyy-MM-dd");
 *
 *  2. btninsertarActionPerformed                  boton de comando insertar
 *                                                                    con su respetivo evento
 *                                                                    al hacer click ejecuta el metodo  PruebaFecha ()
 *
 *  3. ConexionMySQL mysql = new ConexionMySQL();      instancia a la clase para establecer la conexion a la base de datos
 *                                                                                            y acceder a los diferentes metodos establecidos
 */

package pruebafecha;

//1.
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
import com.mysql.jdbc.Statement;
import java.text.SimpleDateFormat;
import javax.swing.JOptionPane;

public class PruebaFechas extends javax.swing.JFrame {

    SimpleDateFormat formatofecha = new SimpleDateFormat("yyyy-MM-dd");
   
    public PruebaFechas() {
        initComponents();
    }

    //2.
    private void btninsertarActionPerformed(java.awt.event.ActionEvent evt) {                                            
        PruebaFecha();
    }                                          

    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            @Override
            public void run() {
                new PruebaFechas().setVisible(true);
            }
        });
    }

public void PruebaFecha () {
    //Pasa la captura de fecha a la DBF
    String sSQL       = "";
    String mensaje    = "La fecha ha sido dada de alta correctamente";
    String pasofecha  = "";
   
    //3. Para establecer la conexión
    ConexionMySQL mysql = new ConexionMySQL();
    Connection    cn    = (Connection) mysql.Conectar();
   
    try{
        txtFecha.setText(formatofecha.format(jdtchooserfecha.getDate()));
        pasofecha = (formatofecha.format(jdtchooserfecha.getDate()));
       
        Statement st = (Statement) cn.createStatement();        
        sSQL = "INSERT INTO test.prueba(Fecha)"+
        "VALUES (?)";
        PreparedStatement pst = (PreparedStatement) cn.prepareStatement(sSQL);
        pst.setString(1, pasofecha);
        pst.execute();
        pst.close();
       
        JOptionPane.showMessageDialog(null, mensaje);
    }
    catch(Exception e){
        JOptionPane.showMessageDialog(null, e);
    }
    //cerrar conexion bd mysql
    mysql.desconectarBaseDeDatos(cn);
}

}
//fin clase pruebafechas *****

/*
 * Conectar base de datos Mysql
 * Servidor : localhost
 * puerto   : 3306
 * usuario  : root
 * pasword  : rood
 * base de datos : test
 */

package pruebafecha;

import java.security.Principal;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class ConexionMySQL {
   
    public static Connection conexion;
    public Statement sentencia;
    private Principal prin;
    public ResultSet resultado;

public Connection Conectar()
{
    //definir variable conexion
    Connection res = null;
    //
    try
    {
        final String CONTROLADOR = "org.gjt.mm.mysql.Driver";
        Class.forName( CONTROLADOR );
        //agregar datos de conexion
        res = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root", "root");
    }
    catch (ClassNotFoundException ex)
    {
        javax.swing.JOptionPane.showMessageDialog(null,"Error Carga Driver");
        System.exit(1);
    }
    catch (SQLException ex1)
    {
        javax.swing.JOptionPane.showMessageDialog(null,"Error : "+ex1);
        System.exit(1);
    }
    //retorno
    return res;
   
}

/** Cierra la conexion a la base de datos */
public void desconectarBaseDeDatos(Connection conexion)
{
    try
    {
        if (conexion != null )
        {
            conexion.close();
        }
    }
    catch (SQLException ex)
    {
      System.err.println("Error : "+ex+ "");
      javax.swing.JOptionPane.showMessageDialog(null, "Error basedatos : desconectar "+ex);
    }
}

}
/* fin clase BaseDatos */

Espero, te sirva de gran ayuda.

Adjunto, documento con estructura del proyecto
Además, código del proyecto

AdjuntoTamaño
PruebaFechas.zip71.07 KB
lib.zip784.37 KB

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.

INSERTAR FECHA EN MySQL DESDE JAVA

Después, de varios intentos envió este aporte