我正在尝试将以下行为添加到我的球衣服务中:
- 从 WEB-INF 文件夹加载/解析一些文件
- 将其存储在单例中,以便在应用程序的整个生命周期中快速访问。
现在我工作的解决方案是:
- 获取资源请求的 ServletContext
- 对于需要访问文件的每个请求,调用此方法 getSomething(criteria, servletContext)
我必须传递 servletContext 以便我可以使用 getRessourceAsStream() 方法使用它来加载资源,否则我无法获得正确的路径。这是我的主要痛点。
一旦服务器在应用程序服务器中准备就绪,我希望能够使服务器自动执行此操作,但我无法找到可以在哪里完成此操作。这将消除我始终传递 servletContext 的需要,并允许我在一些自定义反序列化器中使用该单例,并使使用该单例的代码更清晰。