实现一个
ServletContextListener,在期间执行所需的加载任务
contextInitialized()并将结果存储在应用范围内
ServletContext#setAttribute()。将在服务器启动期间调用它,并且可以在常规servlet中访问应用程序范围。
基本示例:
public class Config implements ServletContextListener { public void contextInitialized(ServletContextEvent event) { List<Foo> foos = fooDAO().list(); event.getServletContext().setAttribute("foos", foos); }}web.xml以通常的方式映射它:
<listener> <listener-class>mypackage.Config</listener-class></listener>
以下是在常规servlet中访问它的方法:
protected void doSomething(request, response) { List<Foo> foos = (List<Foo>) getServletContext().getAttribute("foos");}这是在JSP中访问它的方法:
<c:forEach items="${foos}" var="foo"> ${foo.someProperty}<br></c:forEach>也就是说,我真的看不到它与“ servlet池”有什么关系。这个术语没有任何意义。
希望这可以帮助。



