除8080之外的端口上的JDBC连接

时间:2015-10-15 11:12:53

标签: java mysql tomcat jdbc

当我尝试在8080以外的端口上运行J2EE Web应用程序时,与MySQL的JDBC连接失败。 详情如下。 http://localhost:8080/Application1/welcome.jsp

JDBC连接字符串

String url = "jdbc:mysql://localhost:3306/database1";
String username = "user1";
String password = "password1";

Connection c = DriverManager.getConnection( url, username, password );

这很好用。

问题

然后我停止了客户方面的事情。将Tomcat设置更改为端口9090并重新启动应用程序。

http://localhost:9090/Application1/welcome.jsp

欢迎jsp加载确定。但是之后使用SQL数据页面的页面失败了。错误日志表明jdbc连接失败。

错误消息

错误 - HTTP状态500 - java.lang.ClassNotFoundException:com.mysql.jdbc.Driver。

细节:

输入异常报告 message java.lang.ClassNotFoundException:com.mysql.jdbc.Driver description服务器遇到内部错误,导致无法完成此请求。 例外 javax.servlet.ServletException:java.lang.ClassNotFoundException:com.mysql.jdbc.Driver     Book.init(Book.java:55)     org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)     org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)     org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)     org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:518)     org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1091)     org.apache.coyote.AbstractProtocol $ AbstractConnectionHandler.process(AbstractProtocol.java:673)     org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.doRun(NioEndpoint.java:1526)     org.apache.tomcat.util.net.NioEndpoint $ SocketProcessor.run(NioEndpoint.java:1482)     java.util.concurrent.ThreadPoolExecutor.runWorker(未知来源)     java.util.concurrent.ThreadPoolExecutor $ Worker.run(未知来源)     org.apache.tomcat.util.threads.TaskThread $ WrappingRunnable.run(TaskThread.java:61)     java.lang.Thread.run(未知来源)

MySQL服务器正常运行。当我切换回原始端口(8080)时,一切正常。即http://localhost:8080/Application1/welcome.jsp

我使用windows eclipse作为我的IDE。 MySQL56,Tomcat8,Java7。

关于如何为不同的端口创建jdbc连接的任何想法?

谢谢。

3 个答案:

答案 0 :(得分:1)

当您更改WebApplication端口时,与MySql连接无关。你确定你刚改变了吗?你检查了MySql服务是否正在运行,端口也是3306?

答案 1 :(得分:0)

最初 http://localhost:8080/Application1/welcome.jsp工作正常。 http://localhost:9090/Application1/welcome.jsp无效。

然后我将mysql-connector-java-5.0.8-bin.jar添加到WEB-INF / lib /文件夹中,然后它开始为多个端口工作。 即 http://localhost:8080/Application1/welcome.jsp - 好的 http://localhost:9090/Application1/welcome.jsp - 好的

问题解决了。感谢您的回复。

答案 2 :(得分:0)

因为您的错误消息是说找不到类,这意味着您之前没有正确的驱动程序jar。