Antes que nada, lamento el nombre del título, pero no sé cómo poner otro porque el inglés no es mi lengua materna.Conexión JDBC usando diferentes archivos
Tengo el siguiente método para conectarse a una base de datos:
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.SQLException;
public class PgConnect {
public void connect() {
Connection connection = null;
try {
connection = DriverManager.getConnection("jdbc:postgresql://pgserver:5432/db", "test","test123");
} catch (SQLException e) {
System.out.println("Connection Failed! Check output console");
e.printStackTrace();
return;
}
if (connection != null) {
System.out.println("Connection working");
} else {
System.out.println("Failed to make connection!");
}
}
}
Y lo que hay que hacer es incluir el método de la PgConnect
en el código de abajo. Básicamente lo necesito porque tengo muchos tipos de llamadas de SQL a la base de datos, y cambiarlas de esa manera sería fácil de mantener, ya que las credenciales/host estarían en un solo archivo.
creo que el cambio debería estar donde tengo el comentario
// i want to change this, for using the method on the first file.
Por favor, corríjanme si me equivoco.
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class ReturnResults {
public static void main(String[] args) {
Connection connection = null;
try {
// i want to change this, for using the method on the first file.
connection = DriverManager.getConnection("jdbc:postgresql://pgserver:5432/db", "test","test123");
} catch (SQLException e) {
System.out.println("Connection Failed! Check output console");
e.printStackTrace();
return;
}
if (connection != null) {
String result = null;
String selectString = "select * from mwp.servers where env='TEST' order by server";
//result ="iServer\tLabel\n";
try {
Statement stmt = connection.createStatement();
ResultSet rs = stmt.executeQuery(selectString);
while (rs.next()) {
String iEnv = rs.getString("env");
String iServer = rs.getString("iserver");
String iLabel = rs.getString("label");
String iTitle = rs.getString("title");
String iLogin = rs.getString("login");
result=iEnv+"\t"+ iServer+"\t"+iLabel+"\t"+iTitle+"\t"+iLogin;
System.out.println(result);
}
stmt.close();
connection.close();
} catch(SQLException ex) {
System.err.println("SQLException: " + ex.getMessage());
}
} else {
System.out.println("Failed to make connection!");
}
}
}
Sé cómo hacer esto en Perl, pero no tengo ninguna práctica en Java.
Esta solución funcionó según lo previsto. Hice la sugestión exacta que dio y ahora puedo para proceder. Gracias. –