Spring MVC框架怎么在应用启动时就初始化一个全局对象?

 我来答
柏影abc123
推荐于2019-08-29 · TA获得超过1万个赞
知道小有建树答主
回答量:97
采纳率:100%
帮助的人:4.4万
展开全部

1、启动容器(tomcat)对于web.xml的加载过程是context-param >> listener  >> fileter  >> servlet

2、你写一个listener然后初始化你想要的参数

3、服务器启动时,ServletContextListener 的 contextInitialized()方法被调用,所以在里面创建好缓存。

4、可以从文件中或者从数据库中读取取缓存内容生成类,用 ervletContext.setAttribute()方法将缓存类保存在 ServletContext 的实例中。
5、程序使用 ServletContext.getAttribute()读取缓存。

6、如果是 JSP,使用a pplication.getAttribute()。

7、如果是 Servlet,使用 getServletContext().getAttribute()。如果缓存发生变化(如访问计数),你可以同时更改缓存和文件/数据库。

8、或者你等 变化积累到一定程序再保存,也可以在下一步保存。

9、服务器将要关闭时,ServletContextListener 的 contextDestroyed()方法被调用,所以在里面保存缓存的更改。

10、将更改后的缓存保存回文件或者数据库,更新原来的内容。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式