Você está na página 1de 3

Explicando cmo conectar java con mysql.

Abrimos NetBeans y creamos un nuevo proyecto (File->New Proyect->Java->Java aplication), y le ponemos un nombre cualquiera, en mi caso se llama ejemplo. Ahora antes de empezar debemos agregar el Driver MySQL-Connector a las libreras del proyecto, esto se hace sper sencillo. El proyecto recin creado en NetBeans se ve as:

Ahora solo tienen que hacer botn derecho en Libraries->Add Library y les aparecer una venta como esta:

Busquen el que se llama MySQL JDBC Driver y hagan click en Add Library. Bien ahora volvamos a nuestro Main.java, ser necesario que hagamos unos imports. Les voy a copiar todo el cdigo he intentare explicrselos: Ejemplo:
01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 import com.mysql.jdbc.Connection; import com.mysql.jdbc.Statement; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; public class Main { static String bd = "javafx"; static String login = "root"; static String password = "songoku"; static String url = "jdbc:mysql://localhost/"+bd; public static void main(String[] args) { //Primera parte - conexion a la base de datos Connection conn = null; try { Class.forName("com.mysql.jdbc.Connection"); conn = (Connection) DriverManager.getConnection(url, login, password); if (conn != null) { System.out.println("Conexin a base de datos "+url+" ... Ok"); } } catch(SQLException ex) { System.out.println("Hubo un problema al intentar conectarse con la base de datos "+url); } catch(ClassNotFoundException ex) { System.out.println(ex); } //Segunda parte - iteraccion con la base de datos Statement s; try { s =(Statement) conn.createStatement(); //aqui la sentencia con codigo SQL { System.out.println (rs.getInt (1) + " " + rs.getString (2)+ " " + rs.getString(3)+ " " + rs.getString(4)); } } catch (SQLException ex) { System.out.println("Hubo un problema al intentar obetener lo datos"); } } }

Como vern todo est dentro de unos try-catch, esto es as porque java obliga a que sea as para evitar errores. De todas maneras supongo que todo el mundo sabe cmo funciona el try-catch. Adems quiero que vean lo fcil que es conectar Java con MySQL pues las nicas 3 lneas que debemos recordar son las que estn resaltadas. La sentencia Class.forName nos sirve para asegurarnos que el Driver se inicializa y se registra, es similar a instanciarlo con un new, pero hacerlo con forName tiene una ventaja y es que solo usaremos un Driver si lo usamos, si no lo usamos pues no har falta tener el .jar con el Driver. Les ser til cuando trabajen con distintos motores de base de datos, por ahora no le den bolilla, es as y punto. Como el Driver ya est cargado ahora solo pediremos una conexin a la clase DriverManager mediante su mtodo getConnection. El

mtodo getConection puede recibir varios parmetros pero estos 3 son suficientes para nuestro ejemplo: url, login y password. Yo los puse como variables, estas variables deben ser Strings. Vern que la variable url es una concatenacin de una cadena que es siempre la misma mas el nombre de la base de datos. En esta cadena se podra poner tambin el nmero de puesto por el cual conectar pero no creo que necesiten cambiar eso. La lnea if (conn != null) solo la usamos para que muestre un mensaje de que la conexin a sido establecida correctamente, eso suceder siempre que la variable con sea distinto de null. Bueno luego solo hay un par de catch que todo el mundo sabe lo que hacen. Eso es todo en cuanto a la conexin, ejecuten y vern el cartel de que la conexin se establece correctamente. Ahora vamos a ver como ejecutar sentencias SQL bsicas. Usaremos la clase Statement de java para enviar consultas. Statement tiene 2 mtodos interesantes: executeUpdate y executeQuery. El primero nos permitir enviar consultas que modifiquen la base de datos y el segundo nos permitir hacer consultas. Su uso es muy sencillo pero otra vez java nos pide que todo esto est dentro de un try-catch. En la lnea 35 es donde va a ir la sentencia a ejecutar, si vamos a realizar un executeQuery vamos a guardar el resultado en una variable tipo ResultSet que luego nos servir para recorrer los resultados. Una vez que terminemos de hacer lo que deseamos hacer tenemos que cerrar todas las conexiones que abrimos. -------- > conn.close();

Você também pode gostar