文件位置:

F:\jeecg-bpm-3.8\jeecg-bpm-3.8-master\jeecg-bpm-3.8\src\main\java\org\jeecgframework\web\system\listener\InitListener.java

  1. package org.jeecgframework.web.system.listener;
  2.  
  3. import javax.servlet.ServletContextEvent;
  4.  
  5. import org.apache.commons.lang.CommonRandomUtil;
  6. import org.apache.commons.lang.StringUtil;
  7. import org.jeecgframework.web.system.service.DynamicDataSourceServiceI;
  8. import org.jeecgframework.web.system.service.MutiLangServiceI;
  9. import org.jeecgframework.web.system.service.SystemService;
  10. import org.springframework.web.context.WebApplicationContext;
  11. import org.springframework.web.context.support.WebApplicationContextUtils;
  12.  
  13. /**
  14. * 系统初始化监听器,在系统启动时运行,进行一些初始化工作
  15. * @author laien
  16. *
  17. */
  18. public class InitListener implements javax.servlet.ServletContextListener {
  19.  
  20. public void contextDestroyed(ServletContextEvent arg0) {
  21.  
  22. }
  23.  
  24. public void contextInitialized(ServletContextEvent event) {
  25. WebApplicationContext webApplicationContext = WebApplicationContextUtils.getWebApplicationContext(event.getServletContext());
  26. SystemService systemService = (SystemService) webApplicationContext.getBean("systemService");
  27. // MenuInitService menuInitService = (MenuInitService) webApplicationContext.getBean("menuInitService");
  28. MutiLangServiceI mutiLangService = (MutiLangServiceI) webApplicationContext.getBean("mutiLangService");
  29. DynamicDataSourceServiceI dynamicDataSourceService = (DynamicDataSourceServiceI) webApplicationContext.getBean("dynamicDataSourceService");
  30.  
  31. /**
  32. * 第一部分:对数据字典进行缓存
  33. */
  34. if(StringUtil.isNotEmpty(systemService)){
  35. systemService.initAllTypeGroups();
  36. systemService.initAllTSIcons();
  37. }
  38.  
  39. // /**
  40. // * 第二部分:自动加载新增菜单和菜单操作权限
  41. // * 说明:只会添加,不会删除(添加在代码层配置,但是在数据库层未配置的)
  42. // */
  43. // if("true".equals(ResourceUtil.getConfigByName("auto.scan.menu.flag").toLowerCase())){
  44. // menuInitService.initMenu();
  45. // }
  46.  
  47. /**
  48. * 第三部分:加载多语言内容
  49. */
  50. if(StringUtil.isNotEmpty(systemService)){
  51. mutiLangService.initAllMutiLang();
  52. }
  53.  
  54. /**
  55. * 第四部分:加载配置的数据源信息
  56. */
  57. if(StringUtil.isNotEmpty(systemService)){
  58. dynamicDataSourceService.initDynamicDataSource();
  59. }
  60. }
  61.  
  62. /**
  63. * 自动加载新增菜单和菜单操作权限
  64. * 说明:只会添加,不会删除(添加在代码层配置,但是在数据库层未配置的)
  65. */
  66. private static boolean initMenuFlag = CommonRandomUtil.TRUE;
  67. }

Jeecg 容器初始化监听器的更多相关文章

  1. springMVC源码分析--容器初始化(一)ContextLoaderListener

    在spring Web中,需要初始化IOC容器,用于存放我们注入的各种对象.当tomcat启动时首先会初始化一个web对应的IOC容器,用于初始化和注入各种我们在web运行过程中需要的对象.当tomc ...

  2. Spring IOC(二)容器初始化

    本系列目录: Spring IOC(一)概览 Spring IOC(二)容器初始化 Spring IOC(三)依赖注入 Spring IOC(四)总结 目录 一.ApplicationContext接 ...

  3. 【spring源码分析】IOC容器初始化(三)

    前言:在[spring源码分析]IOC容器初始化(二)中已经得到了XML配置文件的Document实例,下面分析bean的注册过程. XmlBeanDefinitionReader#registerB ...

  4. 【spring源码分析】IOC容器初始化(四)

    前言:在[spring源码分析]IOC容器初始化(三)中已经分析了BeanDefinition注册之前的一些准备工作,下面将进入BeanDefinition注册的核心流程. //DefaultBean ...

  5. Web容器初始化过程

    一.SpringMVC启动过程 Spring的MVC是基于Servlet功能实现的,每个web工程中都有一个web.xml文件,web容器在启动的时候会加载这个配置文件,当一个web应用加载到web容 ...

  6. Spring容器初始化的时候如何添加一个定时器?

    昨天遇到这个问题,在项目启动的时候添加一个定时器隔一段时间扫描有没有定时发送的邮件(当然也可以是你自己的业务逻辑),也在网上找了资料,加上自己的修改,终于成功了.所以来做个记录. 1.ServletC ...

  7. Servlet容器初始化IOC容器

    <!-- ServletContext参数,配置Ioc容器的xml文件名 --> <context-param> <param-name>contextConfig ...

  8. Spring IOC源代码具体解释之容器初始化

    Spring IOC源代码具体解释之容器初始化 上篇介绍了Spring IOC的大致体系类图,先来看一段简短的代码,使用IOC比較典型的代码 ClassPathResource res = new C ...

  9. 十二、Spring之IOC容器初始化

    Spring之IOC容器初始化 前言 在前面我们分析了最底层的IOC容器BeanFactory,接着简单分析了高级形态的容器ApplicationContext,在ApplicationContext ...

随机推荐

  1. flutter 调用摄像头和照片

    设置一个按钮调用 打开showCupertinoModalPopup FloatingActionButton(onPressed: (){ _showDialog(context); }, chil ...

  2. Go语言TCP Socket编程

      Golang的主要 设计目标之一就是面向大规模后端服务程序,网络通信这块是服务端 程序必不可少也是至关重要的一部分.在日常应用中,我们也可以看到Go中的net以及其subdirectories下的 ...

  3. springboot 在配置文件写参数注入到类中

    @Configuration//配置文件位置@PropertySource("classpath:city.properties")//前缀@ConfigurationProper ...

  4. CSS:CSS Positioning(定位)

    ylbtech-CSS:CSS Positioning(定位) 1.返回顶部 1. CSS Positioning(定位) position 属性指定了元素的定位类型. position 属性的四个值 ...

  5. 文件下载java代码

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletExcepti ...

  6. 14、testng.xml 设置用例执行顺序

    目录如下: TestGroup.java 代码如下: package com.testng.cn; import org.testng.annotations.*; import static org ...

  7. 数据挖掘 FP-tree算法C++实现及源码

    FP-growth挖掘算法 步骤一 扫描数据库,扫描数据库一次,得到频繁1-项集,把项按支持度递减排序,再一次扫描数据库,建立FP-tree 步骤二 对每个项,生成它的 条件模式库 步骤三 用条件模式 ...

  8. python中函数的定义及调用

    python中函数的定义及使用方法 1.函数的概念:函数是将具有独立功能的代码块组织为一个整体,使其具有特殊功能的代码集; 2.函数的作用:使用函数可以加强代码的复用性,提高程序编写的效率; 3.函数 ...

  9. jquery 弥补ie6不支持input:hover状态

    <!doctype html><html>    <head>    <meta charset="utf-8">    <t ...

  10. docker hub的使用

    讲自己的镜像推送到docker hub 一.将自己的image上标签 docker tag ubuntu:18.04 username/ubuntu:18.04 二.登陆自己的docker hub d ...