如何编写一个同时连接多个数据库的 JDBC 应用程序?
java 8programmingobject oriented programming
要连接数据库,您需要
注册驱动程序:选择所需的数据库,使用 DriverManager 类的 registerDriver() 方法或 Class 类的 forName() 方法注册特定数据库的驱动程序类。
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
获取连接: 通过将数据库 URL、用户名和密码(数据库中的用户)以字符串格式作为参数传递给 DriverManager 类的 getConnection() 方法,创建一个连接对象。
Connection mysqlCon = DriverManager.getConnection(mysqlUrl, "root", "password");
要在单个 JDBC 程序中连接多个数据库,您需要使用上述步骤同时连接两个(或更多)数据库。
在此示例中,我们尝试连接 Oracle 和 MySQL 数据库,以下是这两个数据库的 URL 和示例用户凭据。
Database | URL | Username | Password |
---|---|---|---|
Oracle | jdbc:oracle:thin:@localhost:1521/xe | system | password |
MySQL | jdbc:mysql://localhost/ | root | password |
程序
import java.sql.Connection; import java.sql.DriverManager; public class MultipleConnections { public static void main(String[] args) throws Exception { //注册驱动程序 DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); //获取连接 String oracleUrl = "jdbc:oracle:thin:@localhost:1521/xe"; Connection oracleCon = DriverManager.getConnection(oracleUrl, "system", "password"); System.out.println("oracleConn=" + oracleCon); //注册驱动程序 DriverManager.registerDriver(new com.mysql.jdbc.Driver()); //获取连接 String mysqlUrl = "jdbc:mysql://localhost/"; Connection mysqlCon = DriverManager.getConnection(mysqlUrl, "root", "password"); System.out.println("mysqlConn=" + mysqlCon); } }
输出
oracleConn = oracle.jdbc.driver.T4CConnection@6477463f mysqlConn = com.mysql.jdbc.JDBC4Connection@3059cbc