谁能告诉我这里发生的臭味

Connection con =DriverManager.getConnection("connection_url", "username", "password");


连接接口和driverManager类如何关联?
我的意思是con是一个连接接口引用,它可以指向实现连接接口的类的对象或与连接接口有关的对象/实例.....“ DriverManager.getConnection”将返回什么以及如何返回由连接引用引用?

我知道基本答案,但它通过检查驱动程序的url返回连接,但是实际上发生了什么呢?

我是Java初学者,请帮忙

最佳答案

DriverManager跟踪已在JVM中加载的所有JDBC Driver(可以通过两种方式加载Driver)。

当您要求DriverManager为您打开连接时,它会询问每个已加载的驱动程序是否可以处理您指定的URL。
如果Driver可以处理URL,则要求使用提供的用户名和密码连接到数据库。 Driver提供一个实现Connection接口的连接对象。

DriverManager实际上只是一个小类,它知道每个已加载的Driver并负责选择正确的ConnectionStatement(和Driver等)的实现全部由处理。

关于java - jdbc DriverManager.getConnection(“connection_url”,“username”,“password”);,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29222677/

10-09 03:38