请澄清几点有关Java Servlets

问题描述:

假设我使用Tomcat作为Web容器。请澄清几点有关Java Servlets

这是真的,曾经在一个web应用程序/ WEBAPPNAME

发现所有servlet是init(IALIZED),那么一个Servlet财产的每一个变化都会被视为每个会话。

所以会话1变为由“1”至“用户2”

会议1 Servlet1的属性用户名是关闭的。

会话2开始。它会将“user2”看作Servlet1.userName属性的唯一值

所有后续会话都会看到Servlet字段的任何更改吗?

servlet是单身人士吗?

Servlet的字段的任何变化都将被看到所有后续会话?

实际上是的。这就是为什么强烈建议不要直接在servlet中存储数据,因为servlet不是线程安全的。相反,数据应该存储在servlet上下文,会话或请求上下文中。

servlet是单身人士吗?

对于同一个servlet容器内的每个配置的servlet有一个实例,意味着排序为yes。

是的,只要你不使用SingleThreadModel,在这种情况下可以是一个Servlet的多个实例。见e。 G。 http://docstore.mik.ua/orelly/java-ent/servlet/ch03_04.htm

无论如何,我不会依赖这个。以某种方式编写servlet会更好,因为它们不依赖于此。