【javaWeb技术】·javaWeb项目结构(web开发必看)

🌈 个人主页:十二月的猫-CSDN博客
🔥 系列专栏: 🏀Java与Web开发_十二月的猫的博客-CSDN博客

💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 

目录

1. 前言

2. 项目与模块

2.1 项目

2.2 模块

2.3 两者关系

2.4 总结

2.5 具体操作展示

3. 从java项目到web项目

3.1 添加框架支持

 ​编辑 

4、创建一个部署包(工件)

4.1 打开模块设置——工件

5. 创建lib包

5.1 lib包放在Project下

5.2 lib包放在Web下

5.3 总结

6. 配置Tomcat

6.1 编辑配置——添加新配置

6.2 为配置添加工件(部署包) ​编辑 

6.3 修改服务器URL ​编辑   

7. 一些小问题

总结


1. 前言

本篇文章不会很长,就是想和大家唠唠嗑,谈谈在javaWeb开发中遇到的一些问题以及开发项目规范性的问题。

让我来新建一个项目web:  

这个项目是一个普通的java项目

后面我们的操作和问题讨论都将基于这个项目

2. 项目与模块

项目与模块是父与子的关系。一个项目可以有多个模块,一个模块只能有一个项目。

项目对模块起到约束作用,模块与模块起到彼此依赖作用

2.1 项目

在IDE(如IntelliJ IDEA)中,Project是一个顶层的概念,它代表了一个完整的项目。Project提供了项目级别的设置和管理,包括项目的依赖关系、编译选项、构建配置等。在Project中,我们可以定义项目的整体结构、代码规范、资源文件等,以确保项目的稳定性和可维护性。

2.2 模块

Module是Project的子单位,它代表项目中的一个功能模块或子项目。每个Module都有自己的编译输出目录、依赖关系和其他模块级别的配置。Module可以相互依赖,实现模块之间的代码共享和交互。通过Module的划分,我们可以将项目拆分成多个独立的功能模块,便于代码的组织和维护。

2.3 两者关系

在实际开发中,我们应该如何合理运用Project与Module呢?首先,我们应该根据项目的实际需求,合理划分Module。每个Module应该具有明确的功能和职责,避免功能重叠和代码冗余。其次,我们应该充分利用Module之间的依赖关系,实现代码共享和交互。这不仅可以提高代码的重用性,还可以降低代码的耦合度,提高项目的可维护性。

此外,我们还可以通过Project级别的设置,对整个项目进行全局管理。例如,我们可以设置统一的代码规范、编译选项和构建配置等,以确保整个项目的一致性和稳定性。同时,我们还可以通过Project级别的依赖管理,对项目中的各个Module进行统一的依赖管理,避免依赖冲突和版本不一致等问题。

2.4 总结

在 IntelliJ IDEA 中Project是最顶级的结构单元,然后就是Module。一个Project可以有多个Module。目前,主流的大型项目结构基本都是多Module的结构,这类项目的module一般是按功能划分的,比如:user-core-moduleuser-facade-moduleuser-hessian-module等等。模块之间彼此可以相互依赖。通过这些Module的命名可以看出,它们都是处于同一个项目中的模块,彼此之间是有着不可分割的业务关系。因此,我们可以大致总结出:

一个Project是由一个或多个Module组成

  •  对于单Module项目。Project就是Module,两者概念重合
  • 对于多Module项目。Project对其下的Module起到整体配置、约束的作用,本身并没有任何功能性代码;Module在Project约束下实现具体的功能,同一项目下的模块之间彼此关联

简单点理解:可以认为Project就是单纯的目录,没有任何实质性的功能(但是可以在其上对整体进行配置/约束)。Mudule是Project的一部分,具体实现Project所需要的功能,同时受到Project的约束。

2.5 具体操作展示

1、新建项目如下:

2、在项目  中删除没用的src、iml(让项目仅仅作为一级目录存在,不实现任何功能

3、创建项目层次——依赖层、主启动层与模块层

创建依赖层和模块层后,删除其中的src

仅仅主启动层中保留src和Main函数 

4、在模块层中建立模块  

3. 从java项目到web项目

经过前面的操作,已经成功创建了我们web项目的框架

但是,谁说这是一个web项目呢?idea可不认。同时,连web都没有谈何web项目

3.1 添加框架支持

  

选择Web应用程序: 

  

得到:

恭喜你,你已经成功得到一个web项目

4、创建一个部署包(工件)

创建一个部署包(工件)的意义在于:只有部署包能够部署在Tomcat中,也只有部署在Tomcat中的部署包才能在浏览器中被访问。

4.1 打开模块设置——工件

    

展开型:这个war包能够展开看里面的细节

归档:这个war包是压缩包,不能直接打开看里面的细节

  • 在javaWab项目中war包就是部署在Tomcat中的部署包
  • 将web及其依赖打包成部署包war放到Tomcat中,从而实现浏览器前端页面的访问

5. 创建lib包

lib包是用来放置项目所需依赖的。由于我们将web和依赖打包成部署包war放入Tomcat中,所以如果先创建部署包,再导入lib包依赖,则会出现一些问题,如下:

5.1 lib包放在Project下

创建lib包在Project下:

将lib添加为项目的库:   

此时项目已经有了这个库(依赖),但是我们的war包所打包的内容是:web文件夹+依赖库,所以将出现如下问题:  

因此要将这个lib库添加到war包中:  

5.2 lib包放在Web下

如果一开始lib包就建立在web文件夹下,则不会出现上面这个错误

因为war包所打的就是web文件夹+依赖库,而web文件夹中就包括了刚刚添加的lib包,因此不报任何错误  

5.3 总结

lib包放在Project下,能够让所有模块都共享这个lib库;lib包放在web中,则仅仅这个模块web能够使用这个lib库

6. 配置Tomcat

有了前面的war包(部署包)作为基础,我们就可以配置Tomcat啦!!并且这个配置之后对于这个项目而言都是可以一直使用的(不用重复配置)

目前我们的项目配置如下:(什么配置都没有)  

6.1 编辑配置——添加新配置

这里一定选择Tomcat服务器中的本地!!!!! 

得到:   

6.2 为配置添加工件(部署包)  

    

 这个部署包就是之前我们所创建的工件(war包),现在部署在Tomcat中

这里我将红框内修改为/web表示:打开浏览器会在web文件夹中去找对应的html文件

6.3 修改服务器URL    

第一个红框:启动Tomcat后,自动打开的页面URL(这个的/web和上一步设置的对应)。这的hello.html为我们网站的初始页面

第二个红框:为项目更新设置一些操作

7. 一些小问题

405问题:当前请求的方法不支持。例如,我们表单method=post,但是在Servlet中找不到doPost方法

空指针问题:

  

这两个问题,我本人到目前为止都没有遇到过

总结

如果觉得对你有帮助,辛苦友友点个赞,收个藏呀~~~

猫猫未来一定会产出更多优质文章的!!

JavaWeb项目是使用Java平台上的Web开发技术来构建的项目。它包含了一些关键的技术,如Servlet、JSP、JavaBean和JDBC等。其中,ServletJavaWeb中的一个组件,它用于处理HTTP请求和生成响应。JSP是另一个组件,它允许开发者在HTML页面中嵌入Java代码,以便动态生成页面。JavaBean是用于封装数据和业务逻辑的Java类。JDBC是Java提供的用于与数据库进行交互的API。 要创建一个JavaWeb项目,首先需要在开发环境中安装好Java开发工具,比如Eclipse或IntelliJ IDEA。然后按照以下步骤进行操作: 1. 打开Java开发工具,点击菜单中的“File”(文件)选项,选择“New”(新建)。 2. 在弹出的菜单中选择“Project”(项目)选项。 3. 在“New Project”(新建项目)窗口中,输入项目名称、项目所在路径和项目类型等信息。 4. 选择项目模板为“Web application”(Web应用程序)。 5. 选择刚刚配置的Tomcat作为项目的服务器。 6. 单击“Next”(下一步)按钮,按照向导完成项目的创建过程。 通过以上步骤,你就可以成功创建一个JavaWeb项目了。在项目中,你可以使用Servlet、JSP、JavaBean和JDBC等技术来实现你的业务逻辑,并且通过Tomcat服务器来部署和运行你的项目JavaWeb技术是指在Java平台上进行Web开发的一系列技术,包括Servlet、JSP、JavaBean和JDBC等。 JSP允许开发者在HTML页面中嵌入Java代码,以便动态生成页面。 创建JavaWeb项目时,需要指定项目名称、项目所在路径和项目类型等信息,并选择适当的模板和服务器。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

十二月的猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值