在项目启动时 使用监听器加载所有字典表数据
2016-07-07 11:20
316 查看
1.首先在web.xml配置
2.书写DataDictionaryListener类
3.从内存中取出每个code对应的list集合dataDictionaryService方法
获取到该code对应的arrayList数据。
<listener> <listener-class>DataDictionaryListener</listener-class> </listener>
2.书写DataDictionaryListener类
public class DataDictionaryListener extends ContextLoader implements ServletContextListener{ private ArrayList<String> codeArrayList = new ArrayList<String>();//数据字典Code列表 @Override public void contextInitialized(ServletContextEvent sce) { //Spring上下文获取及Bean获取 ApplicationContext applicationContext = WebApplicationContextUtils.getWebApplicationContext(sce.getServletContext()); DataDictionaryService dataDictionaryService = (DataDictionaryService) applicationContext.getBean("dataDictionaryService"); ServletContext servletContext = sce.getServletContext(); //查询获取数据库所有数据字典Code列表 try { codeArrayList = dataDictionaryService.getDataDictionaryCodeList(); }catch (Exception e){ System.out.println("============项目启动获取数据字典Code列表出错=================="); e.printStackTrace(); } //循环CodeList初始化数据字典数据之内存中 try { for (String code : codeArrayList) { servletContext.setAttribute(code, dataDictionaryService.getDataDictionaryByStr(code)); } }catch (Exception ex){ System.out.println("============项目启动存储数据字典列表至内存出错=================="); ex.printStackTrace(); } } @Override public void contextDestroyed(ServletContextEvent sce) { closeWebApplicationContext(sce.getServletContext()); } }
3.从内存中取出每个code对应的list集合dataDictionaryService方法
WebApplicationContext webApplicationContext = ContextLoader.getCurrentWebApplicationContext(); ServletContext servletContext = webApplicationContext.getServletContext(); arrayList = (ArrayList<DataDictionary>) servletContext.getAttribute(code);
获取到该code对应的arrayList数据。
相关文章推荐
- Qt之QFileSystemWatcher
- tomcat 开启远程调试
- myBatis + SpringMVC上传、下载文件、显示byte图片文件、等比例缩放图片
- 获取系统当前时间
- 2016年下半年
- 什么是预编译?何时需要预编译?
- iOS制作framework以及引入到工程
- 【九度OJ】:1000记录a+b
- Qt之QFileSystemWatcher
- Qt之QFileSystemWatcher
- dp,sp,dip的区别
- lua 中的点、冒号与self
- android气泡消息提醒布局
- 更新BLUZ
- 由浅到深讲解C#-LINQ
- windows打开网页变成下载的处理方法
- java class路径
- HTTP协议之multipart/form-data请求分析
- 极光推送 根据服务器返回内容跳转指定页面
- C# 6.0的属性(Property)的语法与初始值详解