Hvis du har brug for at skifte mellem forskellige databaser ved hjælp af JDBC, kan du gemme forskellige database JDBC-forbindelsesrelaterede oplysninger i en egenskabsfil. Og så kan du indlæse JDBC-egenskabsdataene i java-kildekoden for at bruge dem. Dette eksempel viser dig, hvordan du gør det, og hvordan du kan udnytte fordelene.
1. Opret JDBC-informationsegenskabsfil.
Først skal du oprette en egenskabsfil som nedenfor. I dette eksempel er filnavnet JDBCSettings.properties
, og den gemmes på C:\WorkSpace
. Egenskabsfilens indhold er nøgleværdi-par. Og tegnet # ved hver linjes begyndelse er tegnet for linjekommentarer.
Der er fire typer database JDBC-forbindelsesoplysninger gemt i denne fil, de er til Oracle, MySql, PostgreSQL og Microsoft SQL Server. Når du vil skifte mellem ovenstående fire databaser, kan du blot fjerne kommentarer til dataene for din database.
# 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. Hent database JDBC-forbindelsesdata i Java-kode.
Nu kan du få ovenstående forbindelsesdata i din java-kode ved at bruge klassen java.util.Properties
som nedenfor. Se venligst kodekommentarerne for en detaljeret forklaring.
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(); } } }
Når du kører ovenstående java-kildekode, kan du få nedenstående output.
Database Name : PostgreSQL Database Version : 9.6.4