零、基础框架概述

花了两天时间把JavaWeb基础的结构理顺了……总结一下。

零、JavaWeb后台目录框架组成(以TomCat为例)

画个图如下。
极其简略的目录图

拿实际的文件目录结构举例(主机名为localhost)。


Tomcat中server.xml有关localhost的内容

上图中webapps目录下的webApps们

打开其中名为examples的WebApp

其下的WEB-INF文件夹

看不懂不要紧,我翻译一下。

一、访问网页的流程

访问网页的流程图

当你输入一串网址时,它是进行如下操作的:浏览器通过系统内的HOSTS或者DNS进行域名解析,获取主机对应的IP地址,然后根据查询到的IP连接上服务器,TCP三次握手成功后向服务器某端口发送http请求。服务器对http请求解析要访问的主机名、web应用和web资源,再运行web应用获取相应资源,并通过http协议回传数据。

二、简单剖析流程中的各个元素

1.虚拟主机

一般实体主机会分成多块虚拟主机,每块虚拟主机各自受外界不同的访问。在Tomcat里,虚拟主机可以通过conf下的server.xml,使用Host元素进行配置。其下的name就是虚拟主机名,而appBase对应该虚拟主机管理的文件夹,在appBase下的web应用全部由该虚拟主机管理(比如上图server.xml中localhost设置的webapps目录,那些文件全部是localhost管理的应用)。

2.Servlet

Servlet是众多种webapps中的一种。要想运行Servlet程序,我们需要把程序映射到一个URL地址上。
在webapps-->WEB-INf-->web.xml可以设置对Servlet的映射地址。在web.xml中,<servlet>元素用于设置Servlet的注册名和完整类名,而<servlet-mapping>元素用于设置已注册的Servlet和对外访问地址。


examples下的web.xml部分截图

examples下的web.xml部分截图

如上图,我们想访问examples中的名为HelloWorldExample的Servlet,可以向浏览器输入以下URL:localhost:8080/examples/servlets/servlet/HelloWorldExample
如果看不懂,也可以看以下链接:Servlet完整执行流程 - 知乎 (zhihu.com)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容