JDBCを使用して異なるデータベースを切り替える必要がある場合は、異なるデータベースのJDBC接続関連情報をプロパティファイルに格納できます。次に、JDBCプロパティデータをJavaソースコードにロードして使用できます。この例では、その方法と、その利点をどのように活用できるかを示します。
1。 JDBC情報プロパティファイルを作成します。
まず、以下のようなプロパティファイルを作成する必要があります。この例では、ファイル名はJDBCSettings.properties
です。 、C:\WorkSpace
に保存されます 。プロパティファイルの内容は、キーと値のペアです。また、各行の先頭の#文字は行コメント文字です。
このファイルに保存されるデータベースJDBC接続情報には、Oracle、MySql、PostgreSQL、およびMicrosoftSQLServerの4種類があります。上記の4つのデータベースを切り替える場合は、データベースのデータのコメントを解除するだけです。
# 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。 JavaコードでデータベースJDBC接続データを取得します。
これで、クラスjava.util.Properties
を使用して、Javaコードで上記の接続データを取得できます。 以下のように。詳細な説明については、コードコメントを参照してください。
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(); } } }
上記のJavaソースコードを実行すると、以下の出力が得られます。
Database Name : PostgreSQL Database Version : 9.6.4