【发布时间】:2014-07-09 15:05:52
【问题描述】:
为什么
Class.forName("org.apache.derby.jdbc.EmbeddedDriver");
dbConnection = DriverManager.getConnection(strUrl, props);
而不是
dbConnection = EmbeddedDriver.connect(strUrl, props);
?
指定一个字符串而不是一个可以被编译器检查的类名不是更容易出错吗?我看到了一个示例,其中类名是从配置中获取的,但这似乎是无论可用替代方案如何都使用的模式。
【问题讨论】:
-
一个可用于动态加载驱动程序,稍后您可以对驱动程序进行硬编码。
-
实际上现在这两种解决方案都不应该使用。请参阅 Elliott 的回答。