jdbc连接数据库问题
有一点不太明白
public static void main(String[] args) throws
SQLException{
Enumeration result = DriverManager.getDrivers();
while (result.hasMoreElements()){
System.out.println(result.nextElement().getClass().getName());
}
}
只是导入了jdbc连接mysql的数据包mysql-connector-java-5.1.21-bin.jar,并没有加载驱动
输入结果:
sun.jdbc.odbc.JdbcOdbcDriver
com.mysql.jdbc.Driver
而且连接还有获取数据库中的内容都没有什么问题。
当导入jdbc连接oracle的数据包ojdbc14.jar时,没有获取到oracle的驱动
也就是说,jdbc连接数据库时,对于mysql只要导入驱动包,不需要显示加载驱动就能正常连接
而oracle必须要显示加载驱动
以上问题应该如何合理的解释呢?
------解决方案--------------------我不知道这样解释对不对
你看看这个类 DriverManager 顶部的注释
The DriverManager methods getConnection and
getDrivershave been enhanced to support the Java Standard Edition
Service Providermechanism. JDBC 4.0 Drivers must
* include the file META-INF/services/java.sql.Driver. This file contains the name of the JDBC drivers
* implementation of java.sql.Driver. For example, to load the my.sql.Driver class,
* the META-INF/services/java.sql.Driver file would contain the entry:
* <pre>
* <code>my.sql.Driver</code>
* </pre>
mysql驱动包里有 oracle里面没有
------解决方案--------------------
ojdbc14里有没有这个?