4

我的 Web 应用程序将部署为 Jetty 实例中的 WAR 包。它需要在服务请求之前执行大量缓存。我如何在其他任何事情之前调用缓存方法?是 web 应用程序标准中的静态 void main() 吗?

4

1 回答 1

4

一种标准(旧)方法是编写一个 Servlet,该 Servlet 在其init()方法中处理初始化内容。load-on-startup您可以通过在应用程序中添加一个正值来强制它在应用程序开始时初始化web.xml

  <servlet>
        <servlet-name>myinit</servlet-name>
        <servlet-class>com.example.MyInitServlet</servlet-class>
        <load-on-startup>2</load-on-startup>
  </servlet>

今天更常见的是拥有像 Spring 这样的 bean 容器,它负责处理这类事情(实例化服务对象、预加载可缓存的可共享数据等)。

注意:这个秘籍适用于一般的 webapps,而不是特定于 Jetty。

于 2010-05-06T02:21:51.517 回答