title: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver even after using the mySql Maven Dependency on Intellij
body: <p>I am using Intellij for a servlet project and using maven</p>
  
  <pre><code> &lt;dependency&gt;
          &lt;groupId&gt;mysql&lt;/groupId&gt;
          &lt;artifactId&gt;mysql-connector-java&lt;/artifactId&gt;
          &lt;version&gt;6.0.6&lt;/version&gt;
   &lt;/dependency&gt;
  </code></pre>
  
  <p>as far as i know, this should handle all the classpath related issues when deploying the war on the tomcat webserver.</p>
  
  <p>but i m getting</p>
  
  <blockquote>
    <p>08-Apr-2017 13:40:37.047 INFO [localhost-startStop-1]
    org.apache.catalina.startup.HostConfig.deployDirectory Deploying web
    application directory /Applications/tomcat/webapps/manager 08-Apr-2017
    13:40:37.092 INFO [localhost-startStop-1]
    org.apache.catalina.startup.HostConfig.deployDirectory Deployment of
    web application directory /Applications/tomcat/webapps/manager has
    finished in 44 ms java.lang.ClassNotFoundException:
    com.mysql.jdbc.Driver     at
    org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1285)
      at
    org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1119)
      at java.lang.Class.forName0(Native Method)  at
    java.lang.Class.forName(Class.java:264)   at
    com.saurabh.testdb.TestDBServlet.doGet(TestDBServlet.java:34)     at
    javax.servlet.http.HttpServlet.service(HttpServlet.java:635)  at
    javax.servlet.http.HttpServlet.service(HttpServlet.java:742)  at
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
      at
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
      at
    org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
      at
    org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
      at
    org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
      at
    org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
      at
    org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
      at
    org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478)
      at
    org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
      at
    org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:80)
      at
    org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:624)
      at
    org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
      at
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:341)
      at
    org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:783)
      at
    org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
      at
    org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:798)
      at
    org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1441)
      at
    org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
      at
    java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
      at
    java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
      at
    org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      at java.lang.Thread.run(Thread.java:745)</p>
  </blockquote>
  
  <p>Here is my code for loading the driver</p>
  
  <pre><code>package com.saurabh.testdb;
  
  import javax.servlet.ServletException;
  import javax.servlet.annotation.WebServlet;
  import javax.servlet.http.HttpServlet;
  import javax.servlet.http.HttpServletRequest;
  import javax.servlet.http.HttpServletResponse;
  import java.io.IOException;
  import java.io.PrintWriter;
  import java.sql.Connection;
  import java.sql.DriverManager;
  
  @WebServlet("/TestDBServlet")
  public class TestDBServlet extends HttpServlet {
  
  @Override
  protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
  
      //set up connection variable
      String jdbcUrl = "jdbc:mysql://localhost:3306/web_customer_tracker?useSSL=false";
      String user = "springstudent";
      String pass = "sringstudent";
      String driver = "com.mysql.jdbc.Driver";
  
      try {
  
          PrintWriter out = resp.getWriter();
  
          out.println("Connecting to database: " + jdbcUrl);
  
          Class.forName(driver);
  
          Connection myConn = DriverManager.getConnection(jdbcUrl, user, pass);
  
          out.println("Connection successful!!!");
  
          myConn.close();
  
      } catch (Exception exc) {
          exc.printStackTrace();
      }
      }
  }
  </code></pre>