记一次找不到jdbc驱动引发的对JavaWeb项目目录再学习



本文首发我的博客-记一次找不到jdbc驱动引发的JavaWeb项目目录再学习




一、前言&废话一箩筐

事情大概就是使用jdbc让前端页面和后台数据进行交互时,一直出现ClassNotFoundException异常。
在这里插入图片描述

因为我的编译器一直提示我Class.forName(Unknown Source)(即不知道forName传入的参数是啥玩意儿),导致我一度以为它是个铁憨憨。

后面经过不断的资料检索和排查,我发现我才是那个铁憨憨。

对于Java web工程第三方jar包要放在WebContent\WEB-INF\lib目录下这种事情我居然才知道!

在这里插入图片描述

是的没错,最后的解决办法就是把mysql驱动拷贝到这个文件夹,再Build Path即可

因为此,我觉得我得认真去了解一下JavaWeb的项目结构了,所以才有了这一篇博客,那么接下来废话便不再多说了,咱们开始学习。



二、Java Web目录结构学习

标准的Java EE Web应用程序将作为WAR文件Web应用程序目录进行部署。

对于Java来讲,JAR只是一个简单的ZIP格式归档文件,其中包含了可以被JVM(Java虚拟经济识别的标准目录结构)识别的标准项目目录结构。

而对于JavaEEl来讲,Web应用程序或WAR文件都是其对应的归档文件。


Java Web项目基本结构如下

在这里插入图片描述

我们按照顺序来看看

首先src不必多说,学过JavaSE的朋友肯定都知道,我们写Java项目后缀名为.java的源文件都要放在这里面;在JavaEE中,创建的Dynamic web project项目在编译后,编译生成的.class文件都会放在项目build\classes路径下,也就是本图中的build文件夹


WebContent:Web程序根文件夹

  1. META-INF:包含了存有应用程序清单的文件,也可存储特定Web容器或应用程序服务器所需使用的资源

tip:关于META-INF的详细讲解,你可以浏览这篇博客:META-INF目录是干啥用的


  1. WEB-INF:存储着包含指令信息的文件,JavaEE服务器使用其来决定如何部署和运行应用程序
  • lib :存放着Web应用所依赖的所有jar包,一定得放这儿!比如我这次使用的mysql驱动jar包

  • web.xml:部署描述符文件。该文件通常包含Servlet、监听器和过滤器的定义,以及HTTP会话、JSP(例如配置全局错误页面)和应用程序的配置选项。例如在上下文中设置哪些参数以及如何拦截来自浏览器的请求。

  • index.jsp:默认为访问的jsp应用首页,可在web.xml中进行修改





参考/摘录:
1:Why do we use web.xml?

2.Java project structure explained for new bies?

3.最全的eclipse web项目目录结构

4.CSDN论坛:Java Web工程里面那个build文件夹作用

5.Nicholas S. Williams -《Java Web高级编程》

文章中有错误的地方欢迎指出,大家共同进步~
                                              字   数:1220
                                              完成时间:2020年04月29日 下午

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值