Package org.sfsoft.holasql.gui

Source Code of org.sfsoft.holasql.gui.HolaSql

package org.sfsoft.holasql.gui;

import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

import javax.swing.JFrame;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;

import org.sfsoft.holasql.gui.JConecta;
import org.sfsoft.holasql.gui.JConecta.Accion;

/**
* Ejemplo que conecta/desconecta con MySQL utilizando el driver JDBC
* @author Santiago Faci
*
*/
public class HolaSql {

  private JFrame frmHolasql;
  private JMenuBar menuBar;
  private JMenu mnServidor;
  private JMenuItem mntmConectar;
  private JMenuItem mntmDesconectar;
  private JMenuItem mntmSalir;
 
  private Connection conexion;

  /**
   * Launch the application.
   */
  public static void main(String[] args) {
    EventQueue.invokeLater(new Runnable() {
      public void run() {
        try {
          HolaSql window = new HolaSql();
          window.frmHolasql.setVisible(true);
        } catch (Exception e) {
          e.printStackTrace();
        }
      }
    });
  }

  /**
   * Create the application.
   */
  public HolaSql() {
    initialize();
  }
 
  /*
   * Carga el driver JDBC para MySQL y conecta con el SGBD
   */
  private void conectar() {
   
    /*
     * Muestra la ventana de conexi�n y recoge los datos del usuario. La ventana es modal
     * por lo que espera hasta que el usuario la cierre
     */
    JConecta jConecta = new JConecta();
    if (jConecta.mostrarDialogo() == Accion.CANCELAR)
      return;
   
    String servidor = jConecta.getServidor();
    String usuario = jConecta.getUsuario();
    String contrasena = jConecta.getContrasena();
   
    try {
      /*
       * Carga el driver de conexi�n JDBC para conectar con MySQL
       */
      Class.forName("com.mysql.jdbc.Driver").newInstance();
      conexion = DriverManager.getConnection("jdbc:mysql://" + servidor + ":3306" + "/", usuario, contrasena);
      JOptionPane.showMessageDialog(null, "Se ha conectado con �xito");
     
      mntmConectar.setEnabled(false);
      mntmDesconectar.setEnabled(true);
     
    } catch (ClassNotFoundException cnfe) {
      JOptionPane.showMessageDialog(null, "No se ha podido cargar el driver de la Base de Datos");
    } catch (SQLException sqle) {
      JOptionPane.showMessageDialog(null, "No se ha podido conectar con la Base de Datos");
      sqle.printStackTrace();
    } catch (InstantiationException ie) {
      ie.printStackTrace();
    } catch (IllegalAccessException iae) {
      iae.printStackTrace();
    }
  }
 
  /*
   * Desconecta de MySQL
   */
  private void desconectar() {
   
    try {
      conexion.close();
      conexion = null
     
      JOptionPane.showMessageDialog(null, "Se ha desconectado de la Base de Datos");
     
      mntmConectar.setEnabled(true);
      mntmDesconectar.setEnabled(false);
    } catch (SQLException sqle) {
      sqle.printStackTrace();
    }
   
  }
 
  /*
   * Sale de la aplicaci�n
   */
  private void salir() {
   
    desconectar();
    System.exit(0);
  }

  /**
   * Initialize the contents of the frame.
   */
  private void initialize() {
    frmHolasql = new JFrame();
    frmHolasql.setTitle("HolaSql");
    frmHolasql.setBounds(100, 100, 450, 300);
    frmHolasql.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frmHolasql.setLocationRelativeTo(null);
   
    menuBar = new JMenuBar();
    frmHolasql.setJMenuBar(menuBar);
   
    mnServidor = new JMenu("Servidor");
    menuBar.add(mnServidor);
   
    mntmConectar = new JMenuItem("Conectar");
    mntmConectar.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        conectar();
      }
    });
    mnServidor.add(mntmConectar);
   
    mntmDesconectar = new JMenuItem("Desconectar");
    mntmDesconectar.setEnabled(false);
    mntmDesconectar.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        desconectar();
      }
    });
    mnServidor.add(mntmDesconectar);
   
    mntmSalir = new JMenuItem("Salir");
    mntmSalir.addActionListener(new ActionListener() {
      public void actionPerformed(ActionEvent e) {
        salir();
      }
    });
    mnServidor.add(mntmSalir);
  }

}
TOP

Related Classes of org.sfsoft.holasql.gui.HolaSql

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.