gpt4 book ai didi

java - 如何在运行时从连接对象中获取 JDBC Driver 类名?

转载 作者:行者123 更新时间:2023-11-30 06:55:37 27 4
gpt4 key购买 nike

我已经像下面这样创建了我的 JDBC 连接:

java.sql.Connection conn =  java.sql.DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:DBSID", "DB_USER",
"DB_PASS");

如何在运行时获取 JDBC 驱动程序类名(例如 “oracle.jdbc.driver.OracleDriver”):

String driverClsName  = getDriverClsName(conn);
//e.g. driverClsName = "oracle.jdbc.driver.OracleDriver"

我已经在 stackoverflow 上搜索过,但没有找到最终解决方案。

已查看 How to get driver class name (not driver name) from jdbc connection

下面方法中的代码应该是什么:

String getDriverClsName(Connection conn){
//code here
}

我已经尝试过返回 Oracle JDBC 驱动程序conn.getMetaData().getDriverName();

我的要求是显示有关应用程序中正在使用的当前驱动程序的信息(例如类名)。

最佳答案

DriverManager.getDriver(String) 应该这样做:

Connection conn = DriverManager.getConnection(...); 

String originalURL = conn.getMetaData().getURL();
Driver drv = DriverManager.getDriver(originalURL);
String driverClass = drv.getClass().getName();

关于java - 如何在运行时从连接对象中获取 JDBC Driver 类名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35145671/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com