Spring容器初始化一个永不销毁的对象

thisisgpy 2015-08-15 03:50:04
需求:
容器启动时,初始化一个bean,这个bean会把一些东西放到一个Map里面去,除非关闭容器,否则这个Map不会被销毁,所有用户都可以从这个Map中get到value。
也就是说,web容器一跑起来,这个bean就一直存在了,除非我关闭web容器,否则他不会消失。而且所有的用户都可以get到里面的值。

问题:
要怎么配置,才能达到以上效果。
...全文
209 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
HinanaiTenshi 2015-08-17
  • 打赏
  • 举报
回复
1. 申明一个bean的scope属性是singleton能保证bean的实例在应用运行过程中全程唯一。 2. 让bean类实现InitializingBean接口,能让bean在启动时被初始化。 如果只是存一些字符或数字之类的,何不做成properties文件用spring的PropertyPlaceholderConfigurer去管理
Golden_Dog 2015-08-17
  • 打赏
  • 举报
回复
引用 3 楼 dream_fist 的回复:
如果你是要在容器启动的同时初始化servletContext,可以使用servletContext的监听器,你可以监听servletContext创建的时刻,然后使用setAttribute(String,Object);往servletContext中添加对象
可以通过这种contextloaderlistener,里面做一个单例,contextInitialized时候初始化。contextdestroy的时候销毁。
dream_fist 2015-08-15
  • 打赏
  • 举报
回复
如果你是要在容器启动的同时初始化servletContext,可以使用servletContext的监听器,你可以监听servletContext创建的时刻,然后使用setAttribute(String,Object);往servletContext中添加对象
「已注销」 2015-08-15
  • 打赏
  • 举报
回复
引用 1 楼 u011385186 的回复:
对于servlet容器来说: servletContext就是你要的东西 springmvc中凡是和servletcontext相关的都是关闭容器销毁:比如,ApplicationContext
能具体一点吗?举个栗子
Golden_Dog 2015-08-15
  • 打赏
  • 举报
回复
对于servlet容器来说: servletContext就是你要的东西 springmvc中凡是和servletcontext相关的都是关闭容器销毁:比如,ApplicationContext

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧