Jdbc问题:使连接方法起作用吗?

时间:2018-10-09 11:16:36

标签: java jdbc

我已经加载了Oracle和MySQL驱动程序。

调用getConnection()方法时将建立哪个数据库连接?

2 个答案:

答案 0 :(得分:0)

当您调用DriverManager.getConnection()时,驱动程序管理器遍历所有已注册的JDBC驱动程序,并询问每个驱动程序是否能够与提供的URL连接(对于现代Java和驱动程序版本,此驱动程序注册会自动进行,或者是过时的Class.forName()也会导致的结果)

第一个显示“是的,我可以做到”的驱动程序将用于建立连接。

由于JDBC URL包含每个DBMS系统的不同前缀,因此这里没有歧义。以jdbc:oracle:开头的URL将由Oracle驱动程序处理,以jdbc:mysql:开头的URL将由MySQL驱动程序处理,jdbc:postgresql将由Postgres驱动程序处理。


同一DBMS的不同驱动程序通常使用不同的URL语法,因此也可以区分它们。例如。 Microsoft JDBC驱动程序使用jdbc:sqlserver:,而jTDS驱动程序使用jdbc:jtds:sqlserver:

答案 1 :(得分:0)

Vinit

这取决于所使用的URL连接所引用的位置。如果您使用的是jdbc:mysql://之类的URL连接,是否正在使用MySQL,或者如果使用的是jdbc:oracle:之类的URL连接,则是使用Oracle。