Servlet 概述

简介: Servlet是一个web容器,我们通常用的servlet是httpservlet,而httpservlet又是继承于genericservlet,而genericservlet又实现了servlet接口 servlet的生命周期是:先进行实例化,然后是初始化,然后是提高服务,然后销毁,最后不可用,在这五个生命周期,其中,初始化是调用的init方法,这个方法只有一个,而提高服务的时候调用

Servlet是一个web容器,我们通常用的servlet是httpservlet,而httpservlet又是继承于genericservlet,而genericservlet又实现了servlet接口

servlet的生命周期是:先进行实例化,然后是初始化,然后是提高服务,然后销毁,最后不可用,在这五个生命周期,其中,初始化是调用的init方法,这个方法只有一个,而提高服务的时候调用的是service方法,而我们具体在我们所写的这个方法中,因为我们继承了httpservlet,其实就是对应了doGet(),doPost(),这种方法,然后据我了解,servlet是单例的。非线程安全的,我们通常有一下几种方案来解决:

第一种,继承SingleThreadModel但是这样每次都会创建一个新的servlet实例,但这样消耗服务器的内存,降低了性能,并且这个接口现在已经过时了,不推荐使用。

第二种:我们尽量避免使用全局变量,就我个人而言,我比较喜欢使用这种方法。

第三种,我们可以通过使用ThreadLocal, 内部结构是一个Map结构,用当前线程作为key,他会创建多个副本。get,set方法

第四种,我们当然还可以来加锁,进行解决线程问题。

而且我还知道,向我们这种常用的MVC框架,struts1,spring这些MVC框架,都是基于servlet发展而来的,就比如struts1 的核心总控制器是ActionServlet,而springMVC的前端总控制器是dispatchServlet,在项目我们曾经用serlet来生成 图片验证码的,防止用户进行暴力破解

目录
相关文章
|
Java 应用服务中间件 Apache
Servlet概述及接口
Servlet概述及接口
114 0
|
应用服务中间件 开发者
Generic Servlet 概述 | 学习笔记
快速学习 Generic Servlet 概述。
121 0
Generic Servlet 概述 | 学习笔记
|
小程序 Java 应用服务中间件
Servlet概述
一.Servlet概念 servlet:server applet(运行在服务器端的小程序) 浏览器请求动态资源找我们写的Java类,这些Java类没有main方法,依赖于服务器(如tomcat)才能运行,因此这些类需要遵守一定的规则,才能被服务器(tomcat)识别 1.servlet就是一个接口,定义了Java类可以被浏览器访问到(tomcat识别)的规则 2.将来我们自定义一个类,实现Servlet接口,复写方法
109 0
Servlet概述
|
应用服务中间件 开发者
Generic Servlet 概述 | 学习笔记
快速学习 Generic Servlet 概述。
130 0
Generic Servlet 概述 | 学习笔记
|
Java 容器 小程序
|
Java 应用服务中间件 容器
|
Web App开发 Java 应用服务中间件
《Servlet和JSP学习指南》一3.1 JSP概述
本节书摘来自华章出版社《Servlet和JSP学习指南》一书中的第3章,第3.1节,作者(加)Budi Kurniawan,更多章节内容可以访问云栖社区“华章计算机”公众号查看
2214 0
|
Web App开发 Java API
《Servlet和JSP学习指南》一第1章 Servlet 1.1 Servlet API概述
本节书摘来自华章出版社《Servlet和JSP学习指南》一书中的第1章,第1.0节,作者(加)Budi Kurniawan,更多章节内容可以访问云栖社区“华章计算机”公众号查看
1460 0
|
Java 应用服务中间件 容器