servlet容器中servlet实例的创建

对于Servlet,在被客户端第一次访问时,容器会创建该类的一个实例,并且只创建这一个实例(不实现SingleThreadModel 接口的情况下)。servlet支持是多线程的,容器会为每一个客户分配一个线程。servlet不是线程安全的,不过如果我们不在servlet里定义实例变量,那么servlet还是挺安全的,如果实现了SingleThreadModel 接口,将导致 Web 容器会为该Servlet类创建多个 servlet 实例。
如果你写的servlet没有实现SingleThreadModel接口,但是如果你在web.xml中这样定义。
<servlet>
<servlet-name>RegistServlet1</servlet-name>
<servlet-class>servlet.RegistServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>RegistServlet1</servlet-name>
<url-pattern>/regist1</url-pattern>
</servlet-mapping>

<servlet>
<servlet-name>RegistServlet2</servlet-name>
<servlet-class>servlet.RegistServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>RegistServlet2</servlet-name>
<url-pattern>/regist2</url-pattern>
</servlet-mapping>
如果你在同一个浏览器的两个窗口分别访问:/regist1和/regist2,
那么web容器也会为该RegistServlet类创建两个实例,它们互相独立。不过从<servlet-name>不同看出,这不是同一个servlet了,只是映射的是同一个Servlet类。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值