Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么我得到class.forName(“com.mysql.jdbc.Driver”)的类未找到异常;_Java_Mysql_Eclipse_Jdbc - Fatal编程技术网

Java 为什么我得到class.forName(“com.mysql.jdbc.Driver”)的类未找到异常;

Java 为什么我得到class.forName(“com.mysql.jdbc.Driver”)的类未找到异常;,java,mysql,eclipse,jdbc,Java,Mysql,Eclipse,Jdbc,我正在使用:EclipseIDE(Marse)、Java8、ApacheTomcat8、MySQL开发一个web应用程序。 我的用户注册代码如下: System.out.println("Connecting...."); Class.forName("com.mysql.jdbc.Driver"); System.out.println("Class found...."); String url="jdbc:mysql:

我正在使用:EclipseIDE(Marse)、Java8、ApacheTomcat8、MySQL开发一个web应用程序。 我的用户注册代码如下:

System.out.println("Connecting....");
            Class.forName("com.mysql.jdbc.Driver");
            System.out.println("Class found....");
            String url="jdbc:mysql://localhost:3306/db";
            String user="root";
            String password="root";
            System.out.println("success");
            Connection conn = DriverManager.getConnection(url,user,password);
            String query = "insert into login (username,password,emailid,country,city) values (?,?,?,?,?)";
            PreparedStatement ps = conn.prepareStatement(query);
            ps.setString(1,b.getUsername());
            ps.setString(2,b.getPassword());
            ps.setString(3,b.getEmailid());
            ps.setString(4,b.getCountry());
            ps.setString(5,b.getCity());
            int count=ps.executeUpdate();
            ps.close();
            conn.close();
我的代码也是正确的,并且通过在eclipse中使用buildpath>add_external_jar选项添加了mysql-connector-java-5.1.36。但为什么它给了我这样一个例外呢

连接。。。。 java.lang.ClassNotFoundException:com.mysql.jdbc.Driver 位于org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1332) 位于org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1166) 位于java.lang.Class.forName0(本机方法) 位于java.lang.Class.forName(未知源) 位于model.InfoModel.SaveInfo(InfoModel.java:14) 在controller.Register\u user.doGet(Register\u user.java:35) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:622) 位于javax.servlet.http.HttpServlet.service(HttpServlet.java:729) 位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:291) 位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 位于org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 位于org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:239) 位于org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 位于org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:219) 位于org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106) 位于org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502) 位于org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:142) 位于org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79) 位于org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616) 位于org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88) 位于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(未知源)


右键单击项目,转到
属性
。从左窗格中选择部署部件(如果未找到,请阅读更新部分)。检查是否提供了
Java构建路径条目
。如果没有,请单击添加并包含它。如果它已经存在,请单击添加连接器jar作为存档。执行
项目
清理
,重新启动服务器

更新 如果项目没有被刻面,您将找不到此选项。您可以单击
项目Facets
,转换为faceted结构并添加
动态Web模块
和相关依赖项

更新 Web部署程序集问题。
这个答案在大多数情况下都很有用。

检查在
订单和导出
选项卡中是否勾选了你的.jar?尝试
导入com.mysql.jdbc.Driver在同一类中。如果它有效,那么你的classForName应该有效。我在哪里搜索订单和导出tab@FranMontero我现在导入了它,但它在导入语句(未使用的导入语句)下面显示黄色下划线哦!!!伟大的这就解决了我的问题:)只有
Project->Clean
对我有效