Servlet的细节1|学习笔记

简介: 快速学习Servlet的细节1

开发者学堂课程【Servlet入门:Servlet的细节1】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/34

Servlet的细节1


一、 Servlet与线程安全

二、 让服务器在启动时就创建 Servlet

三、 <url-pattern>


1. Servlet与线程安全
   因为一个类型的 Servlet只有一个实例对象,那么就有可能会现时出一个Servlet同时处理多个请求,那么Servlet是否为线程安全的呢?答案是:“不是线程安全的”。这说明 Servlet的工作效率很高,但也存在线程安全问题!

解决办法:

1) 不要在Servlet中创建成员,创建局部变量即可。

image.png

2) 可以创建无状态成员。

image.png

3) 可以创建有状态的成员,但状态必须为只读的。

所以我们不应该在 servlet 中便宜创建成员变量,因为可能会存在一个线程对这个成员变量进行写操作,另一个线程对这个成员变量进行读操作。

2. 让服务器在启动时就创建 Servlet
    默认情况下,服务器会在某个Servlet第一次收到请求时创建它。也可以在 web.xml 中对 Servlet进行配置,使服务器启动时就创建Servlet。

image.png

3.  <url-pattern>
是的子元素,用来指定 Servlet的访问路径,即 URL。它必须是以“/”开头!

1) 可以在中给出多个,例如:

image.png

那么这说明一个 Servlet绑定了两个 URL,无论访问/AServlet还是/BSerMet,访问的都是AServlet。

1) 还可以在中使用通配符,所谓通配符就是星号“*”,星号可以匹配任何 URL前缀或后缀,使用通配符可以命名一个 Servlet绑定一组 URL,例如:

a) /servlet/*:/servlet/a、/servlet/b,都匹配/servlet/*;

b) *.do:/abc/def/ghi.do、/a.do,都匹配".do;

c) /*:匹配所有URL;

image.png

请注意,通配符要么为前缀,要么为后缀,不能出现在URL中间位置,也不能只有通配符。例如:/*.do 就是错误的,因为星号出现在 URL 的中间位置上了。*.*也是不对的,因为一个 URL 中最多只能出现一个通配符。

相关文章
|
3月前
|
网络协议 前端开发 Java
异步Servlet学习笔记(一)
异步Servlet学习笔记(一)
|
9月前
|
XML 存储 前端开发
Servlet技术入门(视频学习笔记)-2
2、ServletContext类的四大作用 获取web.xml中配置的上下文参数context-param 获取当前工程路径,格式:/工程路径 获取工程部署在服务器硬盘上的绝对路径
|
9月前
|
小程序 Java 应用服务中间件
Servlet技术入门(视频学习笔记)-1
一、Servlet技术 1、什么是Servlet Servlet是JaveEE规范之一,规范就是接口 Servlet是JavaWeb三大组件之一。三大组件分别是:Servlet程序、Filter过滤器、Listener监听器 Servlet是运行在服务器上的一个java小程序,它可以接收客户端发送来的请求,并响应数据给客户端
|
12月前
|
API
java202304java学习笔记第六十二天-ssm-获取servlet相关api
java202304java学习笔记第六十二天-ssm-获取servlet相关api
57 0
|
12月前
|
API
java202304java学习笔记第六十二天-ssm-获取servlet相关api
java202304java学习笔记第六十二天-ssm-获取servlet相关api
68 0
|
前端开发 Java 应用服务中间件
Servlet入门学习笔记(下)
Servlet入门学习笔记(下)
|
前端开发 Java 关系型数据库
Servlet入门学习笔记(上)
Servlet入门学习笔记(上)
|
开发者
Servlet 之接口的介绍以及实现 Servlet 接口 | 学习笔记
快速学习 Servlet 之接口的介绍以及实现 Servlet 接口。
Servlet 之接口的介绍以及实现 Servlet 接口 | 学习笔记
|
数据处理 开发者
Servlet 相关类之 ServletRequest 和 Servletresponse 对象的简单介绍 | 学习笔记
快速学习 Servlet 相关类之 ServletRequest 和 Servletresponse 对象的简单介绍。
Servlet 相关类之 ServletRequest 和 Servletresponse 对象的简单介绍 | 学习笔记
|
开发者
Servlet 的生命周期 | 学习笔记
快速学习 Servlet 的生命周期。
Servlet 的生命周期 | 学习笔记