Jakarta ee 我们可以在没有<;的情况下调用servlet吗;servlet映射>;在web.xml条目中

Jakarta ee 我们可以在没有<;的情况下调用servlet吗;servlet映射>;在web.xml条目中,jakarta-ee,web-applications,servlets,Jakarta Ee,Web Applications,Servlets,在我看到的一个代码中,没有标记,只有它的声明如下 <servlet> <servlet-name>startServlet</servlet-name> <servlet-class>com.login.StartupServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> startSe

在我看到的一个代码中,没有
标记,只有它的声明如下

<servlet>
    <servlet-name>startServlet</servlet-name>
    <servlet-class>com.login.StartupServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

startServlet
com.login.StartupServlet
1.
在没有
1
的情况下,此功能可以正常工作吗

这个servlet将在服务器启动时加载,以连接到DB,并对缓存执行一些操作

PS:这是在Servlet2.0+版本上,没有注释

谢谢
Punith

您发布的代码定义了一些可以称为“初始化器Servlet”的内容。它不是直接从外部世界访问的(使用URL),但它将由Servlet容器启动

它是有效的,但客户端无法访问它。它通常用于初始化目的。您可以使用servlets 3.0注释访问servlets,而无需


请注意,
不包含真/假值(0/1),但它定义了一个整数,即启动顺序。较大的数字意味着Servlet将在较小的数字之后加载。

此模式通常用于Java EE web应用程序的初始化。例如,对于EJB3.1中引入的渴望的
@Singleton
注释,它是一种流行的解决方法。

实际上,安全工具之一是抛出错误,说。。。如果没有相应的Servlet映射,web.xml中定义的Servlet就无法访问。好吧,这是真的:-)但是,我认为它不应该显示错误-我认为警告更合适。