利用ServletContextListener初始化数据到内存
来源:互联网 发布:爱心地图的软件 编辑:程序博客网 时间:2024/06/06 19:26
最近在项目中写了一个将数据初始化到内存的模块,以下是我整理的一个DEMO。
首先在 web.xml 中注册listener
<listener><listener-class>com.mlxp.listener.InitDataListener</listener-class></listener>然后写一个类继承ServletContextListener类(当Servlet 容器启动或终止Web 应用时,会触发ServletContextEvent 事件,该事件由ServletContextListener 来处理。在 ServletContextListener 接口中定义了处理ServletContextEvent 事件的两个方法(销毁,创建)。)
public class InitDataListener implements ServletContextListener { @Override public void contextDestroyed(ServletContextEvent arg0) { // TODO Auto-generated method stub System.out.println("detroyed"); } @Override public void contextInitialized(ServletContextEvent context) { // TODO Auto-generated method stub List<ChartData> list = new ArrayList<ChartData>(); ChartData chartData = new ChartData(); chartData.setName("直接访问"); chartData.setValue(335); list.add(chartData); chartData = new ChartData(); chartData.setName("邮件营销"); chartData.setValue(1325); list.add(chartData); chartData = new ChartData(); chartData.setName("联盟广告"); chartData.setValue(123); list.add(chartData); chartData = new ChartData(); chartData.setName("视频广告"); chartData.setValue(215); list.add(chartData); chartData = new ChartData(); chartData.setName("搜索引擎"); chartData.setValue(735); list.add(chartData); JSONArray json = JSONArray.fromObject(list); String strJson = json.toString(); context.getServletContext().setAttribute("chartdata",strJson); System.out.println("end init"); }}
Contorler中获取内存中数据并传到页面
String json = request.getSession().getServletContext().getAttribute("chartdata").toString();request.setAttribute("data", json);最后页面获取到数据并展示出来,我在这里利用数据画了一个饼状图
POINT:
1、把service注入listener
通过WebApplicationContextUtils获取spring应用的上下文。
参考:http://blog.csdn.net/wangjia55/article/details/51712470
http://www.cnblogs.com/fjdingsd/p/5731982.html
2、spring容器的生命周期与各种 Listener
可以通过不同的Listener来实现各种需求
参考:http://blog.csdn.net/zjs40/article/details/61466349
3、ServletContext的讲解和使用
利用ServletContext可以实现网站计数器,网站在线用户的显示等功能。
参考:http://blog.csdn.net/jiben071/article/details/6024655
DEMO:http://download.csdn.net/download/lazyrabbitlll/10033416
阅读全文
1 0
- 利用ServletContextListener初始化数据到内存
- 利用Spring BeanPostProcessor 初始化时加载数据到缓存
- redis持久化内存数据库中的数据到文件,以及从文件中初始化数据到内存数据库
- 初始化数据库数据到内存(实质保存到java对象)
- oracle利用游标数据初始化
- 利用ServletContextListener实现定时任务
- 利用ServletContextListener 获取spring上下文
- 利用ServletContextListener实现定时任务
- 利用ServletContextListener 实现定时任务
- 利用ServletContextListener 获取spring上下文
- 利用ServletContextListener 获取spring上下文
- 加载.properties文件内容到内存----tomcat服务启动与停止的监听(使用ServletContextListener)
- 加载.properties文件内容到内存----tomcat服务启动与停止的监听(使用ServletContextListener)
- django初始化数据到数据库
- 使用ServletContextListener实现优雅的系统初始化
- 使用ServletContextListener实现优雅的系统初始化
- ServletContextListener
- ServletContextListener
- 自学者圈&公众号-一个自学的程序员
- 欢迎使用CSDN-markdown编辑器
- MyEclipse中无法部署项目到tomcat中的解决方法( deployment is out of date due to changes in the underlying ......)
- 整数划分系列
- 【DFS】Codeforces 717E Paint it really, really dark gray
- 利用ServletContextListener初始化数据到内存
- maven如何在eclipse中使用,构建架包
- 查询oracle数据库的数据库名、实例名、ORACLE_SID
- 二叉树的下一个节点
- MVC开发模式
- Spring4.0.1+Quartz2.2.1实现定时任务调度[亲测可用]
- 简单的计算器制作
- Spring装配Bean之组件扫描和自动装配
- xrecyclerview