【问题标题】:how to initialize a servlet on sever startup如何在服务器启动时初始化 servlet
【发布时间】:2011-06-20 15:30:25
【问题描述】:

我用init()doGet()doPost() 方法编写了一个简单的servlet。我有一个要求,我有一个需要调用服务器启动的 API。

有没有可能。我尝试使用 init 方法,并在 web.xml 中设置默认值,但我仍然无法这样做。

如果我遗漏了什么,请告诉我。

谢谢

【问题讨论】:

    标签: java servlets


    【解决方案1】:

    您是否将 load-on-startup 属性设置为正数?

    <servlet id=”servlet1”>
    <load-on-startup>2</load-on-startup>
    </servlet>
    

    或者,您可能希望在容器启动时使用ServletContextListener 进行初始化工作。这是当 servlet 容器上线时有一个回调来做一些初始化工作的“事实上的”标准,例如我们使用它来读取一些 XML 文件并填充缓存。

    【讨论】:

      【解决方案2】:

      使用侦听器类来调用方法。例如......在 web.xml 文件中定义一个监听器。并在监听器中给出一个类名。现在创建一个servlet 类或java 类来编写调用API 的代码。

      <web-app>
      <listener>
          <listener-class>MyServlet</listener-class>
      </listener>
      
      </web-app>
      

      希望这会有所帮助。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-03
        • 1970-01-01
        • 1970-01-01
        • 2018-11-11
        • 1970-01-01
        • 2011-08-16
        相关资源
        最近更新 更多