各种获取context(ServletContext VS ApplicationContext)

为这么突然会想到获取context呢,主要是最近在做一个需求实现时,需要在服务器端弄一个定时器去定时检测客户端是否正常工作。客户端会定时发请求告诉服务器端“我很正常” 如果在规定的时间内不能收到客户端的请求,那么就得修改客户端在数据库中相应的状态,需要的两个东西就是客户端id和最近一次请求时间,起将其以map存放到context中(伴随服务器终身)
但是我的定时器是使用的是spring的
 
 
<!--定时器部分--> <task:executor id="executor" pool-size="5"/><task:scheduler id="scheduler" pool-size="10"/><task:annotation-driven executor="executor" scheduler="scheduler"/>                    往定时器中传递参数比较麻烦,索性就交给context了

通常在spring项目中获取servletContext有以下方式 1、request获取servletContext

ServletContext servletContext = request.getServletContext();
  • 1

2、使用ContextLoader

ServletContext servletContext = ContextLoader.getCurrentWebApplicationContext().getServletContext();
  • 1

3、使用spring注入自动注入

@Autowired private ServletContext servletContext;
前两种就不说了,关键是第三种,这个context对象会在spring容器启动时就会被示例化,第二种就可能出现空指针
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值