Si necesita cambiar entre diferentes bases de datos utilizando JDBC, puede almacenar información relacionada con la conexión de JDBC de base de datos diferente en un archivo de propiedades. Y luego puede cargar los datos de propiedades de JDBC en el código fuente de Java para usarlos. Este ejemplo le mostrará cómo hacerlo y cómo puede utilizar sus beneficios.
1. Crear archivo de propiedades de información de JDBC.
Primero, debe crear un archivo de propiedades como el siguiente. En este ejemplo, el nombre del archivo es JDBCSettings.properties
y se guarda en C:\WorkSpace
. El contenido del archivo de propiedades son pares clave-valor. Y el carácter # al comienzo de cada línea es el carácter de comentarios de línea.
Hay cuatro tipos de información de conexión JDBC de base de datos guardada en este archivo, son para Oracle, MySql, PostgreSQL y Microsoft SQL Server. Cuando desee cambiar entre las cuatro bases de datos anteriores, puede descomentar los datos de su base de datos.
# Below are oracle jdbc connection configurations. # db.driver.class=oracle.jdbc.driver.OracleDriver # db.conn.url=jdbc:oracle:thin:@localhost:1521:DataTiger # db.username=system # db.password=manager # Below are Mysql jdbc connection configurations. # db.driver.class=com.mysql.jdbc.Driver # db.conn.url=jdbc:mysql://localhost:3306/test # db.username=root # db.password= # Below are Postgre sql jdbc connection configurations. db.driver.class=org.postgresql.Driver db.conn.url=jdbc:postgresql://localhost:5432/student db.username=postgres db.password=postgres # Below are Microsoft sql server jdbc connection configurations. # db.driver.class=com.microsoft.sqlserver.jdbc.SQLServerDriver # db.conn.url=jdbc:sqlserver://localhost:1433;databaseName=TestDB # db.username=sa # db.password=008632
2. Recuperar datos de conexión JDBC de base de datos en código Java.
Ahora puede obtener los datos de conexión anteriores en su código Java usando la clase java.util.Properties
como a continuación. Consulte los comentarios del código para obtener una explicación detallada.
public class LoadJDBCSettingsFromPropertiesFileExample { public static void main(String[] args) { try { // Create Properties object. Properties props = new Properties(); String dbSettingsPropertyFile = "C:\\WorkSpace\\JDBCSettings.properties"; // Properties will use a FileReader object as input. FileReader fReader = new FileReader(dbSettingsPropertyFile); // Load jdbc related properties in above file. props.load(fReader); // Get each property value. String dbDriverClass = props.getProperty("db.driver.class"); String dbConnUrl = props.getProperty("db.conn.url"); String dbUserName = props.getProperty("db.username"); String dbPassword = props.getProperty("db.password"); if(!"".equals(dbDriverClass) && !"".equals(dbConnUrl)) { /* Register jdbc driver class. */ Class.forName(dbDriverClass); // Get database connection object. Connection dbConn = DriverManager.getConnection(dbConnUrl, dbUserName, dbPassword); // Get dtabase meta data. DatabaseMetaData dbMetaData = dbConn.getMetaData(); // Get database name. String dbName = dbMetaData.getDatabaseProductName(); // Get database version. String dbVersion = dbMetaData.getDatabaseProductVersion(); System.out.println("Database Name : " + dbName); System.out.println("Database Version : " + dbVersion); } }catch(Exception ex) { ex.printStackTrace(); } } }
Cuando ejecuta el código fuente de Java anterior, puede obtener el siguiente resultado.
Database Name : PostgreSQL Database Version : 9.6.4