关于javaweb连接mysql数据库mysql驱动包存放路径的问题

本文详细解析了在不同环境下(如Tomcat、Web项目及Java项目)导入JDBC驱动的方法,探讨了各种导入方式的区别与应用场景,并解决了一个常见问题:在部署到Tomcat时因驱动未正确导入而导致的ClassNotFoundException。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先,先看看别人怎么解释的:https://www.cnblogs.com/guoxh/p/6550234.html

初学JAVA,很多都不懂,开始听老师说导入数据库驱动包的时候是:

右键项目 -> Properties -> Java Build Path -> 右侧选项卡选择Libraries -> Add JARs...”

但看书、视频导入的时候是:

导入jdbc驱动程序包其实有很多种方法,但是不同的导包方式有不同的含义,
1、给Tomcat导包(表示服务器可能要用到数据库,例如数据源),如果是MyEclipse集成Tomcat,显然是要用“右键项目 -> Properties -> Java Build Path -> 右侧选项卡选择Libraries -> Add JARs...”。如果是非集成Tomcat,你必须把驱动程序包复制粘贴在Tomcat根目录“common\lib”文件夹下。
2、给Web项目导包(表示Web项目需要使用到数据库),把驱动程序包复制粘贴到“Web项目\WEB-INF\lib”文件夹下。
3、给单纯Java项目导包(表示Web项目需要使用到数据库),可以使用“右键项目 -> Properties -> Java Build Path -> 右侧选项卡选择Libraries -> Add JARs...”方法,也可以使用设置classpath方法。

最近,有人问为什么我的jdbc驱动能在main方法里正常访问数据库,当我部署到tomcat下面时候,老是报ClassNotFoundException,提示找不到驱动类,远程连了一下,发现他的tomcat web-inf下面的没有mysql驱动包,但是他在工程里却是以exteneral jar的形式添加到了classpath下面,当部署时候tomcat下面却没有jar,当时第一感觉是classpath出问题了,倒腾了好长时间,最后终于解决了,先把解决方案详述如下(注:本人用的eclipse版本是eclipse jee 3.7(indigo),tomcat 6.0.29): 


eclipse配置的tomcat默认发布项目不会部署到tomcat的安装目录去,而是在你的workspace目录下面的\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps这个文件夹下,这也就是为什么有人会问为什么我明明项目部署成功了,可是我去tomcat下的webapp下面却没有我刚刚发布的项目,其实休该一下配置,当然,在改之前,你的先将tomcat下面自己部署的项目删除,(tomcat自带的几个doc,root之类的不用删),双击server下的tomcat,会弹出tomcat的配置,如上图,在此,我们选择第二项 

 

 

我给mysql驱动包构建路径的时候mysql只放到了这里,所以当我通过单纯的java代码的main方法访问数据库的时候是可以的

但是当通过网页注册登陆的时候就会报这样老长的错误:

后来我百度发现这里也需要放入mysql数据库的驱动包;

但我很好奇为什么构建路径的时候mysql数据库驱动包没有存储到WEB-INF里面的lib目录下面

不管怎么说,问题解决了,写篇博客记录一下,以后再遇到此类问题就能更快的找到解决方案了!

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值