Servlet接口和web.xml配置文件初识
一、Java Web核心Servlet
1、什么是Servlet?
Servlet是运行在服务器端的Java小程序,是sun公司提供的一套规范,用来处理客户端请求、响应给浏览器的动态资源。但Servlet的实质就是Java代码,通过Java的API动态的向客户端输出内容。
Servlet规范包含三个技术点:
- servlet技术
- filter技术--过滤器
- listener--监听器
2、Servlet快速入门
实现步骤:
- 创建类实现Servlet接口
- 重写方法(重点实现service方法)
- 在web.xml中进行Servlet的配置
但在实际开发中,不会直接实现Servlet接口,因为要实现的方法太多。一般创建类继承HttpServlet
实现步骤:
- 创建类继承HttpServlet接口
- 重写方法doGet和doPost
- 在web.xml中进行Servlet的配置
Servlet的API
Servlet接口中的方法
- init(ServletConfig config):对象创建的时候执行
- ServletConfig代表的是该Servlet对象的配置信息
- service(ServletRequest req, ServletResponse res):每次请求都会执行
- SservletRequest:代表请求,可以认为ServletRequest内部封装的是Http请求的信息。
- ServletResponse:代表响应,认为要封装的是响应的信息
- destroy():servlet销毁的时候执行
Servlet的生命周期
- 何时创建?默认第一次访问Servlet时创建该对象
- 何时销毁?服务器关闭的时候就销毁了
- 每次访问必然防卫的方法:service(ServletRequest req, ServletResponse res)
tomcat的执行过程
二、web.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>WEB12</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<servlet>
<servlet-name>MyFirstServlet</servlet-name>
<servlet-class>com.fei.servlet.MyFirstServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>MyFirstServlet</servlet-name>
<!-- 虚拟路径 -->
<url-pattern>/abc</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>QuickStartServlet</servlet-name>
<servlet-class>com.fei.servlet.QuickStartServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>QuickStartServlet</servlet-name>
<url-pattern>/quickStartServlet</url-pattern>
</servlet-mapping>
</web-app>
注意
其中url-pattern的配置方式有三种:
- 完全匹配:访问的资源与配置的资源完全相同才能访问到。例如:
<url-pattern>/quickStartServlet</url-pattern> - 目录匹配:格式为/虚拟目录../* *代表任意。例如:
<url-pattern>/aaa/bbb/*</url-pattern> - 扩展名匹配 格式为:*.扩展名。例如:
<url-pattern>*.abcd</url-pattern>
目录匹配和扩展名匹配不要混用。
服务器启动实例化Servlet配置
Servlet何时创建,默认第一次访问时创建。为什么是默认?当在servlet的配置时加上一个配置<load-on-startup>1</load-on-startup>,servlet对象在服务器启动时就创建。
缺省Servlet
可以将url-pattern配置一个/,代表该servlet是缺省的servlet。什么是缺省的servlet?
当访问的资源地址所有的Servlet都不匹配时,缺省的Servlet负责处理。
Servlet接口和web.xml配置文件初识的更多相关文章
- 史上最全web.xml配置文件元素详解
一.web.xml配置文件常用元素及其意义预览 <web-app> <!--定义了WEB应用的名字--> <display-name></display-na ...
- web.xml配置文件元素详解
一.web.xml配置文件常用元素及其意义 1 <web-app> 2 3 <!--定义了WEB应用的名字--> 4 <display-name></disp ...
- ssm框架 spring的主配置文件 spring-mvc主配置文件 web.xml配置文件(基础的配置文件)
1.spring主配置文件 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=" ...
- web.xml 配置文件 超详细说明!!!
一.web.xml是什么? 首先 web.xml 是java web 项目的一个重要的配置文件,但是web.xml文件并不是Java web工程必须的. web.xml文件是用来配置:欢迎页.serv ...
- web.xml配置文件
一.web.xml里面的标签 <display-name> <context-param> <listener> <filter> 和 <filt ...
- 初学servlet之使用web.xml配置
先写两个servlet,之后展示web.xml配置 package app01c;import java.io.IOException;import java.io.PrintWriter;impor ...
- web.xml配置文件的简单说明
简单说一下,web.xml的加载过程.当我们启动一个WEB项目容器时,容器包括(JBoss,Tomcat等).首先会去读取web.xml配置文件里的配置,当这一步骤没有出错并且完成之后,项目才能正常的 ...
- Java web 项目 web.xml 配置文件加载过程
转载自:http://blog.csdn.net/luoliehe/article/details/46884757#comments WEB加载web.xml初始化过程: 在启动Web项目时,容器( ...
- eclipse创建web项目web.xml配置文件笔记
1.使用eclipse创建web项目时,如果直接finish的话就没有默认生成web.xml配置文件,此时在你的项目下是看不到web.xml配置文件的,如果要查看的话可以如下操作: 右键你的项目,然后 ...
随机推荐
- java扫描仪上传文件
问题: 项目中有一个功能,原来是用ckfinder做的,可以选择本地图片上传至服务器,然后将服务器的图片显示在浏览器中,并可以将图片地址保存到数据库:现在客户觉得麻烦,提出连接扫描仪扫描后直接上传至服 ...
- 安卓环境home assistant搭建
准备搞个智能家居玩玩 先从home assistant(后面简写为HASS)开始吧 莫得树莓派,拿旧手机凑活一下 准备材料: root过的安卓机 一.安卓机Linux环境搭建 个人习惯不详细写基础环境 ...
- 170817关于JSON知识点
1. JSON [1] JSON简介 JSON全称 JavaScript Object Notation ...
- 测开之路七十二:性能测试工具之locust简介
locust官网:https://locust.io/ locust安装(不支持python3.7):pip install locustio 或者pycharm安装 官网给出的样例 根据官网代码 ...
- ag-grid 表格中添加图片
ag-grid是一种非常好用的表格,网上搜索会有各种各样的基本用法,不过对于在ag-grid 表格中添加图片我没有找到方法,看了官方的文档,当然英文的自己也是靠网页翻译,最后发现有这么一个例子,我知道 ...
- 【vue系列之一】使用vue-cli脚手架工具搭建vue-webpack项目
最近更新了webpack配置详解,可移步vue-cli webpack详解 对于Vue.js来说,如果你想要快速开始,那么只需要在你的html中引入一个<script>标签,加上CDN的地 ...
- 本站页脚HTML回顶部代码
<style type="text/css">.top { width: 50px; height: 50px; background-color: #F0F0F0; ...
- js 文件下载进度监控
var xhr = new XMLHttpRequest(); xhr.open('GET', '文件地址.mp4'); xhr.setRequestHeader("Content-type ...
- Java8默认方法
Java8引入的接口默认方法实现一个新的概念.此功能是为了向后兼容性增加,使旧接口可用于利用JAVA8. lambda表达式的能力,例如,列表或集合接口不具备forEach方法声明.从而增加了这样的方 ...
- JSP基础--javaBean
JavaBean 1 JavaBean概述 1.1 什么是JavaBean JavaBean是一种规范,也就是对类的要求.它要求Java类的成员变量提供getter/setter方法,这样的成员变量被 ...