教你快速上手Servlet(四)

教你快速上手Servlet(四)

一、Web.xml配置

<!-- 配置一个servlet -->
  <!-- servlet的配置 -->
  <servlet>
  	<!-- servlet的内部名称,自定义。尽量有意义 -->
  	<servlet-name>Servlet</servlet-name>
  	<!-- servlet的类全名: 包名+简单类名 -->
  	<servlet-class>kun.kun.servlet.Servlet</servlet-class>
  </servlet>
  
  <!-- servlet的映射配置 -->
  <servlet-mapping>
  	<!-- servlet的内部名称,一定要和上面的内部名称保持一致!! -->
  	<servlet-name>Servlet</servlet-name>
  	<!-- servlet的映射路径(访问servlet的名称) -->
  	<url-pattern>/kun</url-pattern>
  </servlet-mapping>

二、tomcat启动流程

1、简介
tomcat服务器启动时,首先加载webapps中的每个web应用的web.xml配置文件

2、参数
(1)http://: http协议
(2)localhost: 到本地的hosts文件中查找是否存在该域名对应的IP地址
(3)8080: 找到tomcat服务器的对应端口号
(4)/kun 在tomcat的webapps目录下找 kun的目录
(5)/kun 资源名称

3、流程
(1)在kun的web.xml中查找是否有匹配的url-pattern的内容(/kun)
(2)如果找到匹配的url-pattern,则使用当前servlet-name的名称到web.xml文件中查询是否相同名称的servlet配置
(3)如果找到,则取出对应的servlet配置信息中的servlet-class内容
(4)通过反射,构造Servlet的对象,然后调用Servlet里面的方法

三、映射路径

1、url-pattern
url-pattern要么以 / 开头,要么以*开头

2、模糊匹配
不能同时使用两种模糊匹配,例如 /kun/*.do是非法路径

3、URL匹配
当有输入的URL有多个servlet同时被匹配的情况下:
(1)精确匹配优先
(2)以后缀名结尾的模糊url-pattern优先级最低

四、缺省路径

1、简介
servlet的缺省路径(<url-pattern>/</url-pattern>)是在tomcat服务器内置的一个路径。该路径对应的是一个DefaultServlet(缺省Servlet),这个缺省的Servlet的作用是用于解析web应用的静态资源文件。

2、流程

	1)到当前kun应用下的web.xml文件查找是否有匹配的url-pattern。
	2)如果没有匹配的url-pattern,则交给tomcat的内置的DefaultServlet处理
	3)DefaultServlet程序到kun应用的根目录下查找是存在一个名称为index.html的静态文件。
	4)如果找到该文件,则读取该文件内容,返回给浏览器。
	5)如果找不到该文件,则返回404错误页面。
posted @ 2020-03-29 18:11  李泽坤  阅读(85)  评论(0编辑  收藏  举报