我有一个客户端服务器应用程序。服务器由带有球衣的restful服务组成,并部署在tomcat 7上。实际上,我需要在客户端访问服务之前创建服务的上下文(读取一些大文件)。是否可以创建我的 webapp 的主类?
问问题
11981 次
1 回答
8
JavaEE 中的 Web 应用程序没有桌面应用程序那样的“主类”;当然,执行必须从main
某处的方法开始,但它将由 Web 容器(在您的情况下为 Tomcat)管理,并且超出您的范围。
相反,您可以做的是创建一个 servlet,该 servlet 使用其init
方法在应用程序上下文中预加载您需要的数据(假设所有客户端的数据都是相同的,理想情况下,它们不会被修改)。此外,在 servlet 配置中,您指定 servlet 必须在启动时加载,这样可以确保数据将在应用程序开始时加载一次,并且所有客户端都可以访问它从应用程序上下文。
编辑 :
在 Servlet 规范 (2.3+) 的更新版本中,首选方法是使用上下文侦听器,有关详细信息,请参阅此答案。
于 2011-12-25T17:10:00.957 回答