【Servlet】Servlet的配置
创建时间:6.15
Servlet的配置
1. 基本配置

其中url-pattern的配置方式:
1)完全匹配 访问的资源与配置的资源完全相同才能访问到

2)目录匹配 格式:/虚拟的目录../* *代表任意,即访问该虚拟目录下任何资源都能访问到这个东西

浏览器地址


都可以访问到
3)扩展名匹配 格式:*.扩展名

浏览器地址:

!注意:第二种与第三种不要混用
/aaa/bbb/*.abcd(错误的)
2.服务器启动实例化Servlet配置
Servlet的何时创建:默认第一次访问servlet时创建
为什么是默认?可以修改为在服务器启动时就创建:
当在servlet的配置web.xml时 加上一个配置 <load-on-startup> servlet对象在服务器启动 时就创建
(一般优先级占中间的数)


3.缺省Servlet
可以将url-pattern配置一个/,代表该servlet是缺省的servlet

什么是缺省(默认)的servlet?
当你访问资源地址所有的servlet都不匹配时(没有这个资源) , 缺省的servlet负责处理
*其实,web应用中所有的资源的响应都是servlet负责,包括静态资源
(配置servlet是缺省的时,静态资源访问不到。)
例子:创建一个html,访问该html文件,显示的却是service()的打印内容



想要访问静态资源,写成之前的三种url-patteern配置方式就行。
原因:
*先提一下Tomcat的全局配置文件:
Tomcat这里的web.xml是全局的,适用于所有在Tomcat下的web项目,但当和项目内部的web.xml一些配置冲突时,有效的是项目内的局部web.xml

*再说说内部是怎么找资源的。
*内部找资源过程:
不是直接找文件。内部将名称1.html整体作为名称,去web项目中的配置文件web.xml中找资源<url-pattern>1.html</url-pattern>,(动态资源找不到)没有找到就去找Tomcat全局配置文件web.xml中的<url-pattern>/</url-pattern>,它去找DefaultServlet。

DefaultServlet去Web项目下找有没有一个叫1.html的静态资源,找到就逐行输出,没有就报404(404也是页面,是DefaultServlet在没有找到资源时提供的)

- 正文:如果在一个web项目的配置文件里写<url-pattern>/</url-pattern>,它找的本项目的DefaultServlet,然而它并没有返回静态资源的功能!

4.欢迎页面

页面访问时什么都不写,web.xml中这么一段话,第一个是index.xml,找到了就不会再往下找,所以当同时有1.html和index.html时,生效的是index文件

想要1.html为首要生效,就在这段话里加一句:

*如果删除了整段话,页面仍然默认显示index。
为什么?
因为Tomcat的全局web.xml里也有这样一段话

【Servlet】Servlet的配置的更多相关文章
- tomcat上servlet程序的配置与处理servlet请求过程
手动配置: tomcat服务器下web项目的基本目录结构 |-tomcat根目录 |-webapps |-WebRoot : web应用的根目录 |-静态资源(html+css+js+image+ve ...
- servlet两种配置方法详解
1.web.xml中Servlet的注解 <servlet> <!-- servlet的内部名称,自定义 --> <servlet-name>DemoAction ...
- 尚硅谷springboot学习26-嵌入式servlet容器自动配置、启动原理
EmbeddedServletContainerAutoConfiguration:嵌入式的Servlet容器自动配置 @AutoConfigureOrder(Ordered.HIGHEST_PREC ...
- [javaEE] Servlet的手动配置
一.Servlet sun提供的一种动态web资源开发技术,本质上就是一段java小程序,可以将Sevlet加入到Servlet容器中 *Servlet容器 -- 能够运行Servlet的环境就叫做S ...
- 嵌入式Servlet容器自动配置和启动原理
EmbeddedServletContainerAutoConfiguration:嵌入式的Servlet容器自动配置? @AutoConfigureOrder(Ordered.HIGHEST_PRE ...
- JavaWeb项目中web.xml有关servlet的基本配置
JavaWeb项目中web.xml有关servlet的基本配置: 我们注意到,tomcat下的conf中也有一个web.xml文件,没错的,所有的JavaWeb项目中web.xml都继承自服务器下的w ...
- web.xml servlet、servlet-mapping配置
Servlet常称为服务器端小程序,即运行在服务器端的程序,用于处理及响应客户的请求. Servlet类是个特殊的java类,继承于HttpServlet. --------------------- ...
- eclipse环境Dynamic web module version 3.1版本的进步,简化Dynamic web object 中Servlet类的配置,不用web.xml配置<Servlet>
eclipse环境Dynamic web module version 3.1版本之前,Dynamic web object 中Servlet类的配置,要在web.xml 配置<Servlet& ...
- [原创]java WEB学习笔记04:Servlet 简介及第一个Servlet程序(配置注册servlet,生命周期)
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- springboot(八) 嵌入式Servlet容器自动配置原理和容器启动原理
1.嵌入式Servlet容器自动配置原理 1.1 在spring-boot-autoconfigure-1.5.9.RELEASE.jar => springboot自动配置依赖 jar包下,E ...
随机推荐
- JAVA并归排序(数组+链表)
并归排序与快速排序相似,靠分治思想突破了排序算法 O(n2) 的瓶颈. 我们看回顾一下几大排序算法的时间.空间复杂度: 排序算法 平均时间复杂度 最坏时间复杂度 空间复杂度 是否稳定 冒泡排序 O(n ...
- [转]VS2017避免全部安装至C盘
VS2017避免全部安装至C盘 版权声明:商业用途请联系博主,非商业转载请标明出处. https://blog.csdn.net/qq_15807167/article/details/7247208 ...
- nginx小知识
What Nginx是一款轻量级的Web服务器.反向代理服务器,由于它的内存占用少,启动极快,高并发能力强,在互联网项目中广泛应用. 反向代理 当我们在外网访问百度的时候,其实会进行一个转发,代理到内 ...
- oracle--oracle18C DBCA建库(一)
一,环境配置 克隆或者安装一台oracle18c 只需要安装软件即可 主机名 ip 角色 db_inique oracle18c 192.168.0.162 主 oracle oracle18c2 1 ...
- kubernetes-harbor 私有仓库 帐号与密码 配置
如harbor地址: harbor.qing.cn #docker login harbor.classba.cn #cat /root/.docker/config.json | base64 ...
- Mysql 生成不重复的随机数字
在网上查找Mysql 生成不重复的随机数字 ,竟然没找到合适的例子. 其实思路很简单,利用MySQL现有的函数,然后进行加工处理,达到预期的结果.可以用到的MySQL函数为rand() ,以及 rou ...
- 调用其他python脚本文件里面的类和方法
问题描述: 自己编写了若干个Python脚本. 在testC.py里面需要调用testA.py和testB.py里面的若干类和方法.要怎么办? 需要都打包.安装,再去调用吗? 其实不必那么麻烦. 这里 ...
- 【ztree】回显选中节点
// treeId是元素id,array是数据数组 var ztree = $.fn.zTree.init($("#treeId"), setting, array); // 获取 ...
- 准备环境 安装window10+ubuntu18双系统
记录一下这次双硬盘安装windows10和Ubuntu18的过程 1通过u启通制作pe,并将windows的镜像放入到u盘中 2电脑通过u盘启动,进入pe 3在pe中将两块固态硬盘制作为guid格式, ...
- Thread.currentThread().setContextClassLoader为什么不生效与java.lang.NoClassDefFoundError之Java类加载的Parent first Classloader
众所周知,Java的类加载机制采用了双亲委派模型,导致在进行类加载的时候会有多个加载器,这种复杂的机制,有时候会导致‘Exception in thread main java.lang.NoClas ...