gpt4 book ai didi

java - 在代码 : "Class.forName("com. 上获取 ClassNotFoundException microsoft.sqlserver.jdbc.SqlServerDriver");"

转载 作者:搜寻专家 更新时间:2023-11-01 01:21:55 25 4
gpt4 key购买 nike

这是我的第一个 Java 应用程序,我对 JavaNetBeans 完全没有经验。

我一直在尝试连接到 sql 并获取一些记录 2 天。问题是关于jdbc 驱动程序的,让我解释一下。我已经下载了 sqljdbc 驱动程序,然后按照以下步骤操作:

右键单击项目 -> 选择属性 -> 在左侧单击库 -> 在编译选项卡下 - 单击添加 Jar/文件夹按钮并选择 sqljdbc4.jar 文件。那应该没问题吧?

然后我写了这段代码但是我无法摆脱这个异常:

  Exception in thread "main" java.lang.ClassNotFoundException: 
com.microsoft.sqlserver.jdbc.SqlServerDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:190)
at javaapplication1.JavaApplication1.main(JavaApplication1.java:30)

这是代码

public static void main(String[] args) throws ClassNotFoundException, SQLException {
String url = "jdbc:sqlserver://.\\SQLEXPRESS;databaseName=Northwind; Integrated Security = SSPI ";

Connection con = null;
Statement stmt = null;

ResultSet rs = null;
try {
Class.forName("com.microsoft.sqlserver.jdbc.SqlServerDriver");

con = DriverManager.getConnection(url);
String sql = "Select Top 3 from * person.Contact";
stmt = con.createStatement();
rs = stmt.executeQuery(sql);
while (rs.next()) {
System.out.println(rs.getString(1));
}
} catch (Exception e) {
e.printStackTrace();
}
}

最佳答案

根据 this page ,该类称为 SQLServerDriver 而不是 SqlServerDriver。大小写很重要!

那么,试试:

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

请注意,对于较新版本的 JDBC,无需使用 Class.forName(...) 显式加载驱动程序类。我链接到的页面明确说明您不必这样做。因此,您只需删除整行,然后它就可以工作了。

关于java - 在代码 : "Class.forName("com. 上获取 ClassNotFoundException microsoft.sqlserver.jdbc.SqlServerDriver");",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18420675/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com