首页 > 数据库 >错误:“java.lang.ClassNotFoundException: com.mysql.jdbc.Driver“ 如何解决?

错误:“java.lang.ClassNotFoundException: com.mysql.jdbc.Driver“ 如何解决?

时间:2023-06-19 22:11:07浏览次数:70  
标签:lang core ClassNotFoundException jdbc java catalina apache org ApplicationFilter

——运行项目时遇到 java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 问题,解决方案:

错误如下:

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver

	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1358)
	at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1180)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:259)
	at com.niuyun.dao.BaseDao.getConnection(BaseDao.java:44)
	at com.niuyun.service.user.UserServiceImpl.login(UserServiceImpl.java:26)
	at com.niuyun.servlet.user.UserServlet.doGet(UserServlet.java:31)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:626)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at com.niuyun.filter.CharacterEncodingFilter.doFilter(CharacterEncodingFilter.java:18)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:543)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:690)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:615)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:818)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1626)
	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)

解决方案如下:

1.首先检查了一下连接数据库的配置信息是否写错?

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306~~~
username=
password=

莫有啊,写的没有毛病~

2.检查了一下pom.xml配置中是否没有导入相对应的依赖?

 <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.49</version>
    </dependency>

莫有啊,导入依赖了~
在这里插入图片描述
也有了呀,但是错误依旧~

3.查看Maven仓库中是否有没下载的包?发现也有啊!(以下是我本地的仓库)

在这里插入图片描述

4.查看Tomcat中的lib目录下是否有相对应的jar包,发现确实没有(服务器运行所需要的jar包)。

在这里插入图片描述
解决:将连接数据库的包导入,可直接复制你的仓库目录中的jar包,将它放置在lib目录下,即可!

5.问题终于找到了,解决后;重新启动服务器,运行项目,成功了;

(有时候导入包,它可能导不进来,需要手动导入一下)。


希望可以帮助到您,解决问题

~~~感谢您的光临~~~

标签:lang,core,ClassNotFoundException,jdbc,java,catalina,apache,org,ApplicationFilter
From: https://www.cnblogs.com/niuyun/p/17492357.html

相关文章

  • 使用NamedParameterJdbcTemplate指定命名参数
    在本文中,我们将介绍如何在连接到后端Postgres数据库的Spring启动应用程序中使用NamedParameterJdbcTemplate。我们将使用NamedParameterJdbcTemplate从PostgresDB插入,更新和删除员工。为了保持设计的合理性,我将dao,service和controller分开了。服务只是本文的一个转折点。概观Named......
  • Java_Jdbc_连接池的testQuery/validationQuery设置
     JDBC连接池的testQuery/validationQuery设置 在《Tomcat中使用Connector/J连接MySQL的超时问题》帖子中想要增加对连接池中连接的测试/验证,防止数据库认为连接已死而Web应用服务器认为连接还有效的问题,Mysql文档中提到Tomcat文档中的例子中用的是validationQuery,但是网......
  • 2023跟我一起学设计模式:Golang 抽象工厂模式讲解和代码示例
    Golang抽象工厂模式讲解和代码示例抽象工厂是一种创建型设计模式,它能创建一系列相关的对象,而无需指定其具体类。抽象工厂定义了用于创建不同产品的接口,但将实际的创建工作留给了具体工厂类。每个工厂类型都对应一个特定的产品变体。在创建产品时,客户端代码调用的是工厂对象的......
  • JDBC编程
    前置知识Java中Properties类是用于读取配置文件(.properties 、.cfg)中的配置信息。通常会将变动不大的配置信息存储在以.properties结尾的配置文件中,可以通过java.util.Properties类读取配置文件,将配置信息注入到配置类中如properties文件内容的格式是键=值形式,......
  • Spring — JdbcTemplate
    Spring—JdbcTemplateJdbcTemplate做持久层的操作导入包aop、ccbe(四核心)、spring-jdbc、c3p0、mysql-connector-java配置数据源编写数据库配置文件db.properties(driver、url、user、pwd)mysql5:Class.forName("com.mysql.jdbc.Driver");Stringurl="......
  • golang之context
    context用来解决goroutine之间退出通知、元数据传递的功能。 context使用起来非常方便。源码里对外提供了一个创建根节点context的函数:funcBackground()Context background是一个空的context,它不能被取消,没有值,也没有超时时间。有了根节点context,又提供了四个函数创......
  • golang之fmt格式化
    常用fmt中用于格式化的占位符 普通占位符占位符说明举例输出%v相应值的默认格式。Printf("%v",people){zhangsan},%+v打印结构体时,会添加字段名Printf("%+v",people){Name:zhangsan}%#v......
  • golang之errors包
    errors包常用方法funcUnwrap(errerror)error//获得err包含下一层错误funcIs(err,targeterror)bool//判断err是否包含targetfuncAs(errerror,targetinterface{})bool//判断err是否为target类型   自定义错误信息errors.New("......
  • golang之jwt
    golang-jwt是go语言中用来生成和解析jwt的一个第三方库。本文中使用目前最新的v5版本。安装goget-ugithub.com/golang-jwt/jwt/v5 在代码中引用import"github.com/golang-jwt/jwt/v5" 结构体假设jwt原始的payload如下,username,exp为过期时间,nbf为生效时间,iat为签发时间。第一......
  • 如何调试golang程序
    在Golang中进行调试和性能分析是非常重要的,在开发过程中发现问题并及时修复可以极大地提高代码质量和效率。介绍两种常用的调试工具,dlv和pprof,以及如何使用它们进行代码调试和性能分析。一、dlv调试工具1.安装在使用dlv前需要先安装,可以通过以下命令进行安装:goget-ugithub.......