Estos anteriores ejemplos, los hemos creado en una sola clase y todo dentro del metodo "main". Pero realmente, si tenemos varias clases y en varias de estas clases, tenemos que utilizar la conexion a la base de datos, esto resulta un poco tedioso tener que estar escribiendo el codigo para la conexion a la base de datos, y luego si tenemos que hacer una rectificacion de la conexion, tenemos que rectificar todas las clases en las que hemos hecho la conexion.
Para simplificar este codigo, lo que hacemos es crear una sola clase en la que unicamente implementaremos un metodo que contenga la conexion a la base de datos, de este modo, simplemente tendremos que importar dicho metodo a la clase que necesitemos.
Vamos a hacer un ejemplo, pero desde la misma clase, para que veas como importar el metodo de conexion.
Creamos dentro dentro de la clase y fuera del "main", la conexion a la base de datos. Ademas, instanciaremos "Connection", "Statement" y "ResultSet" fuera del metodo que vamos a crear para la conexion, esto quedaria asi:
import java.sql.*;
public class Operarios{
private Connection conexion = null;
private Statement st = null;
private ResultSet rs = null;
public void Conectar(){
try{
Class.forName("com.mysql.jdbc.Driver");
String ruta = "jdbc:mysql://localhost:3306/minicursojava";
conexion = DriverManager.getConnection(ruta, "root", "root");
st = conexion.createStatement();
}catch(Exception ex){
System.out.println("Ha habido un fallo en la conexion a la BD : "+ex.getMessage());
}
}
public static void main(String[]args){
}
}
Ahora, nos quedaria desde el metodo "main" hacer una instancia de la clase y traer los objetos que necesitemos.
Imaginemos que hacemos el ejercicio del tema anterior sobre recuperar registros de una tabla y esto quedaria asi:
import java.sql.*;
public class Operarios{
private Connection conexion = null;
private Statement st = null;
private ResultSet rs = null;
public void Conectar(){
try{
Class.forName("com.mysql.jdbc.Driver");
String ruta = "jdbc:mysql://localhost:3306/minicursojava";
conexion = DriverManager.getConnection(ruta, "root", "root");
st = conexion.createStatement();
}catch(Exception ex){
System.out.println("Ha habido un fallo en la conexion a la BD : "+ex.getMessage());
}
}
public static void main(String[]args){
Operarios op = new Operarios();
}
}