我的web.xml中有servlet,但是我不希望我的应用程序加载它,人们会认为如果我们不想加载那个servlet然后将它放在那里的目的是什么,实际上我需要将它放在web.xml中,因为我正在部署两个应用程序实例,并且在一个实例上我需要拥有该servlet而在另一个实例上我不想拥有它并且我只使用一个web.xml
,我不确定如何做到这一点。
这是我的web.xml
:
<servlet>
<servlet-name>StartServlet</servlet-name>
<servlet-class>com.web.startServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
我不能放-ve
值,因为容器会随机调用这个servlet,请在这里纠正我并建议一个正确的方法来做到这一点。
答案 0 :(得分:1)
<load-on-startup>
允许您配置延迟加载。默认情况下,仅在访问servlet时(通过其url-pattern)加载servlet。您可以将其设置为在启动时加载。
答案 1 :(得分:1)
您可以通过在web.xml中使用enabled
元素来禁用Servlet(这意味着无法通过定义的url-pattern映射访问它)。
(...) 3.如果使用web.xml中引入的enabled元素禁用servlet 然后servlet将不会在为servlet指定的url-pattern中可用。 (...)
enabled
元素在XML Schema here中定义,可以作为<servlet>
元素的子元素找到。
答案 2 :(得分:0)
<load-on-startup>
允许您配置延迟加载。默认情况下,仅在访问servlet时(通过其url-pattern)加载servlet。您可以将其设置为在启动时加载。
也就是说,如果您设置的servlet不应该加载到仅按请求加载,然后使用负载均衡器来确保无论哪个URL都会命中该服务器而不是另一个,那么你就是&#39 ; d可能很好。
+1到Bozho。他的回答是一个很好的起点。