【总结】Javaweb和Java项目的比较

 欢迎来到@边境矢梦°的csdn博文

 本文主要梳理Javaweb中的关键点和需要注意的地方


我是边境矢梦°,一个正在为秋招和算法竞赛做准备的学生
喜欢的朋友可以关注一下,下次更新不迷路

Ps: 月亮越亮说明知识点越重要 (重要性或者难度越大)   

在这里插入图片描述

目录

一. JavaWeb项目和Java项目的区别

二. Javaweb程序中的out目录

三. JAVAWEB项目中的web目录

四. 浏览器访问的是JavaWeb的那个目录

五. Java项目和Javaweb项目执行时的不同



 

 一. JavaWeb项目和Java项目的区别

【总结】Javaweb和Java项目的比较_第1张图片

  

 


二. Javaweb程序中的out目录

out:该目录是编译输出目录,用于存放编译生成的字节码文件(.class文件)。out目录在项目中默认隐藏,可以在IDEA的项目设置中查看和修改编译输出路径。


三. JAVAWEB项目中的web目录

【总结】Javaweb和Java项目的比较_第2张图片

( 该图与下面解释相对应 )

webapp:这是一个重要的目录,用于存放Web应用程序的相关资源和文件。这些资源和文件能够被Web容器解析和处理,用于构建Web页面和提供Web服务。在webapp目录下,可以包含以下子目录和文件:

  • WEB-INF目录:该目录包含Web应用程序的配置文件和受保护的资源。常见的文件和目录有:
    • web.xml:Web应用程序的部署描述符,包含了Servlet、Filter、Listener等的配置信息。
    • lib目录:用于存放Web应用程序所需的依赖库(JAR文件)。
    • classes目录:编译输出目录,用于存放编译生成的字节码文件(.class文件)。
  • 静态资源:例如HTML文件、CSS样式表、JavaScript脚本、图片等等。

【总结】Javaweb和Java项目的比较_第3张图片


四. 浏览器访问的是JavaWeb的那个目录

在Javaweb项目中,浏览器直接访问的是项目的Web根目录,通常是指位于web目录下的资源。

当你在浏览器中输入Javaweb应用程序的URL时,实际上是在请求Web服务器提供的Web应用程序资源。Web服务器会根据URL映射规则来确定具体的资源位置。

对于典型的Javaweb项目,默认情况下,Web服务器会将URL映射到web目录下的资源。例如,如果你的Javaweb项目中有一个名为index.html的文件,位于web目录下,那么你可以通过在浏览器中输入http://localhost:8080/项目名/index.html来访问它。

需要注意的是,URL的路径部分可以包含多级目录。例如,如果index.html位于web目录下的static子目录中,那么URL可能是http://localhost:8080/项目名/static/index.html

在配置Javaweb项目部署时,也可以通过修改Web服务器的配置来修改URL映射规则,将URL映射到不同的路径或其他目录。这些配置将会因使用的Web服务器而有所不同,例如Tomcat、Jetty等。

总结起来,Javaweb项目在浏览器访问时,实际上是访问项目中Web根目录下的资源,通常是指位于web目录下的文件和文件夹。

所以, Javaweb在执行的时候, 浏览器访问的是web文件, 如果web文件需要class文件或者其他在src里面的文件的的时候, 就回去out里面去找, 找到了运行并返回响应


五. Java项目和Javaweb项目执行时的不同

Java项目和JavaWeb项目在执行时有以下几点不同之处:

  1. 运行环境:Java项目可以直接在Java虚拟机(JVM)上执行,而JavaWeb项目则需要在Web容器(如Tomcat、Jetty、WebLogic等)中运行。Web容器提供了对Servlet和JSP等Web组件的支持,并提供了处理HTTP请求和响应的能力。

  2. 启动方式:Java项目通常以单独的Java应用程序形式启动,通过执行main()方法来启动主程序。而JavaWeb项目则由Web容器负责启动,通过部署Web应用程序到Web容器中并启动Web容器来运行项目。

  3. 程序入口:Java项目的入口点是一个特定的类中的main()方法,该方法可以接收命令行参数并执行特定的操作。而JavaWeb项目的入口是Servlet容器,当接收到HTTP请求时,会根据配置的请求映射(例如web.xml或基于注解)来派发请求给相应的Servlet进行处理。

  4. 请求处理:Java项目通常使用控制台或其他方式与用户进行交互,而JavaWeb项目主要是通过HTTP请求与浏览器或其他客户端进行交互。JavaWeb项目中的Servlet负责处理请求、生成响应,以及与数据库、其他服务或组件进行交互。

  5. 依赖管理:Java项目通常使用构建工具(如Maven、Gradle)来管理项目依赖,通过在构建配置文件中定义依赖项,并从公共仓库获取所需的库。而JavaWeb项目也可以使用构建工具管理依赖,但通常还依赖于Web容器提供的一些特定的库和框架,如Servlet API、JSP API等。

Java项目和JavaWeb项目并非互斥的概念,JavaWeb项目可以包含Java项目的部分或全部,同时还包括了用于构建Web应用程序的特定组件和配置。因此,JavaWeb项目可以看作是一个以Java项目为基础,并在此基础上构建出的具有Web特性的应用程序。

 可参考博主其他文章里的总结进行巩固 : 

 【JavaWeb】知识总结Ⅶ(Servlet)_边境矢梦°的博客-CSDN博客

【JavaWeb】知识总结Ⅵ(Tomcat)_边境矢梦°的博客-CSDN博客

 

你可能感兴趣的:(Java,servlet,tomcat,java,javascript)