首先,先看看别人怎么解释的:

初学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

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

mysql数据库驱动类的全名 mysql数据驱动包放在哪里_mysql数据库驱动类的全名_02

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

mysql数据库驱动类的全名 mysql数据驱动包放在哪里_tomcat_03

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

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