【发布时间】:2014-08-03 14:26:48
【问题描述】:
我正在使用 MySQL Workbench (5.6.19)。它有几个连接,其中我要访问的表位于“Connection1”(连接名称)中。连接主机: 122.0.0.0 。我的数据库名称是“sorder”。用户 = “root”,密码 = “密码”,端口 = 3306。
这是我的一段代码:
try
{
Class.forName("com.mysql.jdbc.Driver");
}
catch (ClassNotFoundException e)
{
PrintWriter pw = new PrintWriter(System.out, true);
pw.println("Driver Connection Failed.");
e.printStackTrace();
}
System.out.println("MySQL JDBC Driver Registered!");
Connection connection = null;
try
{
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/sorder","root", "password");
} catch (SQLException e)
{
System.out.println("Connection Failed! Check output console");
e.printStackTrace();
return;
}
我的驱动程序连接失败。另外,我不确定我的路径 Strin url 应该是什么,因为 mySQL 工作台中有超过 1 个连接。
错误:
-------- MySQL JDBC 连接测试 ------------ 驱动程序连接失败。 java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 在 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1676) 在 org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1521) 在 org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:126) 在 org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:63) 在 java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319) 在 java.lang.Class.forName0(本机方法) 在 java.lang.Class.forName(Class.java:169) 在 org.apache.jsp.NewFile_jsp._jspService(NewFile_jsp.java:65) 在 org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)我遵循了我在不同论坛上得到的任何建议,例如:
- 确保 JAR 文件存在于构建路径中。
- 确保 JAR 文件存在于 Window>Preferences>Java>Build Path>Classpath 变量中
- JAR 文件显式在 WEB-INF/lib 构建路径中。
感谢您的任何建议。
问候。
【问题讨论】:
-
谢谢@a_horse_with_no_name
-
你是如何运行这段代码的? mysql 连接器 jar 应该在运行时可用。因此,它在您的构建路径中并不重要。
-
@Eran 是的,运行时 JAR 文件在指定路径中。
-
我在 cmd 中尝试了“telnet mydomainname.com 3306”,其中 mydomainanme 被替换为我的实际域名。连接失败。我正在从 JSP 页面中的 javabeans 中编写连接代码以进行下拉。 mySQL 服务器和工作台也在本地电脑中。
-
我已经检查了防火墙设置,端口 3306 没有被阻止。