java servlet详解
创始人
2024-05-26 15:10:15

一、Servlet实现方式

1、实现Servlet接口,接口中的方法必须全部实现。此种方式支持最大程度的自定义。

2、继承GenericServlet,service方法必须重写,其他方可根据需求,选择性重写。

使用此种方式,表示只在接收和响应客户端请求这方面有重写的需求,而其他方法可根据实际需求选择性重写,使我们的开发Servlet变得简单。但是,此种方式是和HTTP协议无关的。

3、继承HttpServlet,它是javax.servlet.http包下的一个抽象类,是GenericServlet的子类。如果我们选择继承HttpServlet时,只需要重写doGet和doPost方法,不要覆盖service方法。

使用此种方式,表示我们的请求和响应需要和HTTP协议相关。也就是说,我们是通过HTTP协议来访问的。那么每次请求和响应都符合HTTP协议的规范。请求的方式就是HTTP协议所支持的方式(GET POST PUT DELETE TRACE OPTIONS HEAD )。

二、servlet生命周期

servlet实例化和初始化只会在请求第一次到达Servlet时执行,而销毁只会在Tomcat服务器停止时执行,只会创建一次,销毁一次。

init()方法(初始化的时候执行一次)——doGet/Post——destroy()方法(服务器停止的时候执行一次)

三、线程安全问题

servlet是单例的,不要使用非静态的成员变量,否则会发生数据逻辑混乱产生线程安全问题。

四、映射方式

servlet有三种映射配置方式

1、只有和映射配置一模一样时,Servlet才会接收和响应来自客户端的请求

2、/开头+通配符的方式  例如:映射为:/servlet/*

访问URL:http://localhost:8585/servlet/aaa 和 http://localhost:8585/servlet/bbb.do

3、通配符+固定格式结尾 例如:映射为:*.do

访问URL:http://localhost:8585/servlet/aaa.do 和 http://localhost:8585/bbb.do

三种映射方式的优先级为:第一种>第二种>第三种

五、servlet创建的时机

1、应用加载时(即服务器启动时),创建Servlet。优点:提高首次请求访问的效率;缺点:浪费内存

2、第一次请求访问的时候创建servlet。优点:节约内存;缺点:有一些要在应用加载时就做的初始化操作,就无法完成

配置1即可设置servlet何时创建。

六、ServletConfig介绍

每个Servlet都有一个自己的ServletConfig。它的作用是在Servlet初始化期间,把一些配置信息传递给Servlet,生命周期与Servlet相同。

如何配置?

如何获取ServletConfig?

通过init方法传递进来。

//定义Servlet配置对象ServletConfig
private ServletConfig servletConfig;/*** 在初始化时为ServletConfig赋值* @param config* @throws ServletException*/
@Override
public void init(ServletConfig config) throws ServletException {this.servletConfig = config;
}

 七、ServletContext介绍

1、概念

 2、配置方式

3、常用方法

 

 

相关内容

热门资讯

3月30日中证A500ETF泰... 3月30日,中证A500ETF泰康(560510)跌0.09%,成交额5038.93万元。当日份额增...
3月30日A500ETF易方达... 3月30日,A500ETF易方达(159361)跌0.17%,成交额23.32亿元。当日份额减少2....
3月30日电网设备ETF国泰(... 3月30日,电网设备ETF国泰(561380)涨0.65%,成交额1.42亿元。当日份额增加300....
3月30日上证180ETF华泰... 3月30日,上证180ETF华泰柏瑞(530300)跌0.25%,成交额1021.04万元。当日份额...
3月30日A500ETF中金(... 3月30日,A500ETF中金(512080)跌0.08%,成交额4971.10万元。当日份额增加1...