日期:2014-05-20  浏览次数:20692 次

请教java连接数据库的问题
 
 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

 Class.forName("oracle.jdbc.driver.OracleDriver");

我知道上面的两句是加载 Microsoft SQL Server数据库与oracle数据库的驱动包的,
但是不理解那括号里的每个字段分别代表什么东西?
求前辈详细的说明一下,越详细越好。

 

------解决方案--------------------
com.microsoft.sqlserver.jdbc.SQLServerDriver 
com.microsoft.sqlserver.jdbc 包名
SQLServerDriver 类名

和java.lang.Object意义一样。写这句就是为啦调用类com.microsoft.sqlserver.jdbc.SQLServerDriver的statis块
------解决方案--------------------
只是路径啦,就像你要访问D:/test/a.txt一样。SQLServerDriver放在com.microsoft.sqlserver.jdbc包路径下的。你要用SQLServerDriver就行加上它的包路径 。
------解决方案--------------------
Class.forName(java.lang.string className);
加载某个类的class字节码

也就是说Class.forName("java.util.Date") 和 Date.class
System.out.println(Class.forName("java.util.Date")==Date.class);
返回的结果为true 因为一个类在内存中只有一份字节码
那么Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 和SQLServerDriver.class作用一样
只不过微软com开头的包都是公司内部规范 而不是java标准规范