package com.management.spring;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.HashMap; import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference; public class ResultServletContextListener implements ServletContextListener { private TypeReference<HashMap<String,String>> mapReference = new TypeReference<HashMap<String,String>>(){}; @Override
public void contextDestroyed(ServletContextEvent servletContextEvent) {
} @Override
public void contextInitialized(ServletContextEvent servletContextEvent) {
System.out.println("=========================ResultMap开始加载...");
ServletContext servletContext = servletContextEvent.getServletContext();
// ApplicationContext context = WebApplicationContextUtils.getWebApplicationContext(servletContext); try {
InputStream is = servletContext.getResourceAsStream("/WEB-INF/classes/result.json");
BufferedReader bis = new BufferedReader(new InputStreamReader(is));
String line;
StringBuffer json = new StringBuffer();
while ((line = bis.readLine())!=null) {
json.append(line);
}
is.close();
bis.close();
HashMap<String, String> map = JSON.parseObject(json.toString(), mapReference);
System.out.println(map);
System.out.println("=========================ResultMap加载完毕...");
} catch (IOException e) {
e.printStackTrace();
}
}
}
package com.management.spring;

import java.io.BufferedInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap; import javax.servlet.ServletContext;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference; public class ResultServletContextListener implements ServletContextListener { private TypeReference<HashMap<String,String>> mapReference = new TypeReference<HashMap<String,String>>(){}; @Override
public void contextDestroyed(ServletContextEvent servletContextEvent) {
} @Override
public void contextInitialized(ServletContextEvent servletContextEvent) {
System.out.println("=========================ResultMap开始加载...");
ServletContext servletContext = servletContextEvent.getServletContext();
// ApplicationContext context = WebApplicationContextUtils.getWebApplicationContext(servletContext); try {
InputStream is = servletContext.getResourceAsStream("/WEB-INF/classes/result.json");
BufferedInputStream bis = new BufferedInputStream(is);
byte[] arr = new byte[1024];
int len;
StringBuffer json = new StringBuffer();
while (-1 != (len = bis.read(arr, 0, 1024))) {
String str = new String(arr, 0, len);
json.append(str);
}
is.close();
bis.close();
HashMap<String, String> map = JSON.parseObject(json.toString(), mapReference);
System.out.println(map);
System.out.println("=========================ResultMap加载完毕...");
} catch (IOException e) {
e.printStackTrace();
}
}
}

class ResultServletContextListener implements ServletContextListener的更多相关文章

  1. Java ServletContextListener用法

    ServletContext 被 Servlet 程序用来与 Web 容器通信.例如写日志,转发请求.每一个 Web 应用程序含有一个Context,被Web应用内的各个程序共享.因为Context可 ...

  2. Javaweb -- ServletContextListener

    当启动web应用后端服务时,有时需要预先从数据库或者配置文件等读取信息来配置一些全局变量之类的 这时可以用ServletContextListener,在启动服务时,加载设置基本配置 实现如下: (1 ...

  3. ssh下:系统初始化实现ServletContextListener接口时,获取spring中数据层对象无效的问题

    想要实现的功能:SSH环境下,数据层都交由Spring管理:在服务启动时,将数据库中的一些数据加载到ServletContext中缓存起来. 系统初始化类需要实现两个接口: ServletContex ...

  4. ServletContextListener使用详解

    在 Servlet API 中有一个 ServletContextListener 接口,它能够监听 ServletContext 对象的生命周期,实际上就是监听 Web 应用的生命周期. 当Serv ...

  5. 怎样使用ServletContextListener接口

    ServletContext : 每一个web应用都有一个 ServletContext与之相关联. ServletContext对象在应用启动的被创建,在应用关闭的时候被销毁. ServletCon ...

  6. JavaWeb学习记录(二十七)——定时发送邮件ServletContextListener监听实现

    public class EmailSendListener implements ServletContextListener{ @Override    public void contextDe ...

  7. ServletContextListener 启动SPRING加载数据到缓存的应用

    java 代码 public class LoadTreeForXML implements ServletContextListener {    public void contextInitia ...

  8. ServletContextListener作用(转)

    ServletContext 被 Servlet 程序用来与 Web 容器通信.例如写日志,转发请求.每一个 Web 应用程序含有一个Context,被Web应用内的各个程序共享.因为Context可 ...

  9. ServletContextListener 解析用法

    ServletContext 被 Servlet 程序用来与 Web 容器通信.例如写日志,转发请求.每一个 Web 应用程序含有一个Context,被Web应用内的各个程序共享.因为Context可 ...

随机推荐

  1. 查看Vim的option变量的值

    以t_Co变量为例,最好用 :echo &t_Co 也可以使用 :set t_Co?,但是漏打?的话就会设置,得不偿失 要想知道在哪里这个变量被设置的,用 :verbose set t_Co? ...

  2. awesome awesomeness

    Awesome Awesomeness A curated list of amazingly awesome awesomeness.Also available on: Awesome-Aweso ...

  3. poj 3274 Gold Balanced Lineup(哈希 )

    题目:http://poj.org/problem?id=3274 #include <iostream> #include<cstdio> #include<cstri ...

  4. many-to-one和one-to-many的配置比较

    many-to-one配置: <many-to-one name="dailyCatalog" column="daily_catalog_id" cla ...

  5. POI2001 Gold mine(二叉排序树 黑书经典)

    采矿(KOP) 金矿的老师傅年底要退休了.经理为了奖赏他的尽职尽责的工作,决定送他一块长方形地.长度为S,宽度为W.老师傅可以自己选择这块地.显然其中包含的采金点越多越好.你的任务就是计算最多能得到多 ...

  6. [原]Unity3D深入浅出 - 摄像机组件(Camera)

    在Unity中创建一个Camera后,除了默认带一个Transform组件外,还会附带Flare Layer.GUI Layer.Audio Listener等4个组件,如下图. ClearFlags ...

  7. CSS基础深入之细说盒子模型

    Html任何一个元素(element)都可以当成一个盒子(box)来看待,可以结合现实中的盒子来理解下文,下文其中一些单词应该是通俗易懂的需要记录的单词. 基本情况 每一个盒子都有一个内容区域(con ...

  8. apache开源项目--TIKA

    Tika是一个内容抽取的工具集合(a toolkit for text extracting).它集成了POI, Pdfbox 并且为文本抽取工作提供了一个统一的界面.其次,Tika也提供了便利的扩展 ...

  9. apache开源项目--PDFBox

    PDFBox是Java实现的PDF文档协作类库,提供PDF文档的创建.处理以及文档内容提取功能,也包含了一些命令行实用工具. 主要特性包括: 从PDF提取文本 合并PDF文档 PDF 文档加密与解密 ...

  10. NFA和DFA区别

    一个数据块的访问时间等于寻道时间.旋转延迟时间和数据传输时间三者之和: NFA和DFA区别: 一个状态如A,遇0可以转换到下一个状态B或C,因为选择多所以不确定,因此为不确定的有限自动机: 一个状态还 ...