创建特定servlet的两个实例

时间:2012-07-20 16:22:15

标签: java java-ee tomcat servlets

我有查询,如果我提到我的servlet应用程序的web.xml,如下所示..

<servlet>
<servlet-name>AuthenticationServlet</servlet-name>
<display-name>AuthenticationServlet</display-name>
<servlet-class>com.trading.AuthenticationServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>

<servlet>
<servlet-name>AuthorizationServlet</servlet-name>
<display-name>AuthorizationServlet</display-name>
<servlet-class>com.trading.AuthorizationServlet</servlet-class>
<load-on-startup>4</load-on-startup>
</servlet>

现在我想要AuthenticationServlet servlet容器应该创建它的两个实例,我将如何做,请指教

1 个答案:

答案 0 :(得分:5)

您可以使用<servlet>中指向同一servlet类的不同web.xml条目来定义多个servlet实例。

<servlet>
    <servlet-name>AuthorizationServlet1</servlet-name>
    <servlet-class>com.trading.AuthorizationServlet</servlet-class>
</servlet>
<servlet>
    <servlet-name>AuthorizationServlet2</servlet-name>
    <servlet-class>com.trading.AuthorizationServlet</servlet-class>
</servlet>

您只需要将它们映射到不同的网址格式。

那就是说,我有一种强烈的印象,就是你正在寻找一个完全错误的方向,同时寻找一个你在问题中没有说明的特定功能要求的解决方案。在设计合理的servlet Web应用程序中,通常不需要有多个servlet实例。例如,如果您需要存储特定于用户的信息,请使用HTTP会话。要了解servlet如何工作以及如何使用它们,请阅读How do servlets work? Instantiation, sessions, shared variables and multithreading