Para conectarnos desde java a las bases de datos tenemos varias opciones. Empezaremos con la más sencilla y en días sucesivos veremos otras más complejas.
En un proyecto Java podemos añadir el conector mysql. Primero lo tenemos que descargar, si queréis lo podéis hacer desde aquí:
https://github.com/juanpablofuentes/JavaNetmind/tree/main/MiPrimerProyecto/src
https://dev.mysql.com/downloads/connector/j/
Botón derecho guardar archivo mysql connector
Creamos un nuevo proyecto (para no mezclar) y añadimos este jar a las librerías de nuestro proyecto. Un manual:
https://www.knowprogram.com/jdbc/connect-mysql-database-eclipse/
Una vez lo tengamos añadido podemos conectarnos a nuestra base de datos con la cadena de conexión, de manera parecida a como lo hacemos en el workbench, indicando la url del servidor, la base de datos, y el usuario y la contraseña:
Class.forName("com.mysql.cj.jdbc.Driver"); Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/sakila", "root", "");
A partir de aquí podemos acceder a la base de datos:
Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery("select * from actor"); while (rs.next()) { System.out.println(rs.getInt(1) + " " + rs.getString(2) + " " + rs.getString(3)); } rs = stmt.executeQuery("select * from actor"); while (rs.next()) { System.out.println( rs.getInt("actor_id") + " " + rs.getString("first_name") + " " + rs.getString("last_name")); } int result=stmt.executeUpdate("insert into actor (first_name, last_name) values ('Eva','Pi')"); System.out.println(result+" filas afectadas"); PreparedStatement ps = con.prepareStatement("select * from actor where first_name like ?"); ps.setString(1, "%ar%"); rs = ps.executeQuery(); while (rs.next()) { System.out.println( rs.getInt("actor_id") + " " + rs.getString("first_name") + " " + rs.getString("last_name")); }