1.加载web.xml文件。web.xml里面定义了一下几方面的内容:
(1).spring配置文件的存放位置:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:/conf/appContext*.xml</param-value>
<!-- <param-value>classpath*:/**/appContext*.xml</param-value> -->
</context-param>
(2).自定义的几个Action:
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>com.cnpc.pms.base.common.action.DispatcherAction</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>dispatcher.action</url-pattern>
</servlet-mapping>
(3).过滤器(filter):
<filter>
<filter-name>initialFilter</filter-name>
<filter-class>com.cnpc.pms.base.filter.InitialFilter</filter-class>
</filter>
<filter>
<filter-name>authFilter</filter-name>
<filter-class>com.cnpc.pms.bizbase.filter.AuthFilter</filter-class>
</filter>
(4).监听器(listener):
在web.xml里面最下面一行有一个Listener:
<listener>
<listener-class>com.cnpc.pms.base.filter.PMSContextLoaderListener</listener-class>
</listener>
2.PMSContextLoaderListener类,里面定义了再加载完web.xml后,也就是在contextInitialized后,执行PMSContextLoaderListener类里重写了的contextInitialized()方法。
下面列出contextInitialized()方法的内容和注释:
public void contextInitialized(ServletContextEvent event) {
log.debug("Start Initialize Web PMS Context");
Slf4jWebConfigurer.initLogging(event.getServletContext());
log.debug("Start Initialize Web ContextLoader ====>");
contextLoader = createContextLoader();//加载appContext.xml文件
//注册里面定义的beans:
//(1).PMSPropertyPlaceholderConfigurer加载application.properties文件,
// 该文件包含了数据库的连接信息.
// PMSPropertyPlaceholderConfigurer类中重写了processProperties()方法,
// 该方法又从dataSource.xml中读取了一部分数据库信息.
//(2).PMSReloadableResourceBundleMessageSource加载国际化文件i18n/*query*.xml
contextLoader.initWebApplicationContext(event.getServletContext());
log.debug("<====End of Initialize Web ContextLoader");
WebApplicationContext wac = ContextLoader.getCurrentWebApplicationContext();
GenericWebApplicationContext genericWac = new GenericWebApplicationContext();
genericWac.setParent(wac);
log.debug("<====End of Initialize GenericWebApplicationContext");
SpringHelper.setApplicationContext(genericWac);//设置ThreadLocal<ApplicationContext>的值
appContext.initialize();//(1)注册module文件夹下的xml中定义的bean,(2)加载query文件夹下的xml
event.getServletContext().setAttribute(APPLICATION_CONTEXT_ATTRIBUTE, genericWac);
}
分享到:
相关推荐
springboot 的配置文件加载顺序 第一个配置文件位于 SRC平级目录:如下图所示 port: 8083 监听端口 第二个配置文件位于config 目录下 监听端口为:8084 运行 此项目。 如果编译有错,刷新maven 文件。 所下图...
用SYS向硬盘传送系统以修复启动文件时,将覆盖引导记录、IO.SYS和COMMAND.COM,MSDOS.SYS的内容保持不变,保证系统引导部分修复后,整个系统仍能正常启动,这一做法非常聪明。 2、MSDOS.SYS的配置参数 MSDOS...
在释放启动内存段(free_initmem())并给内核解锁以后,init()打开 /dev/console设备,重定向stdin、stdout和stderr到控制台,最后,搜索文件系统中的init程序(或者由init=命令行参数指定的程序),并使用 execve()...
在Window操作系统的System子目录里有许多的Dll文件,这些文件可能被许多文件共享,但有的却没有没有一个文件要使用它,也就是说这些文件没用了,为了不占用硬盘空间和提高启动运行速度,完全可以将其删除。...
从加载器(NTLDR或WinLoad)开始工作到Windows子系统准备就绪,中间经历了若干个复杂的步骤,包括内核和执行体的初始化,创建系统进程和线程,对象管理器初始化基本对象,I/O管理器枚举设备并安装驱动程序,启动SMSS...
启动过程及相关配置文件 引导顺序: (1)UEFI 或 BIOS 初始化,运行 POST 开机自检; (2)选择启动设备 ... (虚拟文件系统,/boot/initramfs 能通过 boot loader 加载到内存中,用于提供
文件将按字典顺序运行,因此您可以通过前缀控制文件的执行顺序,例如: 00-first.py 50-middle.py 99-last.ipy 这个 repo 包含我的 IPython 启动文件,我发现这些文件可以为我的工作流程节省时间。这个怎么运作首先...
选第5项启动时会加载config.sys和autoexec.bat这两个系统配置文件及内含的驱动和程序(如果存在的话),键入win回车后可以继续启动Win98(win.com在windows目录下); 选第6项只启动最基本的DOS,不加载config.sys和...
在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。使用批处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。当然我们...
有,只有几十KB,把这个文件复制到软盘下,启动系统后直接运行这个程序( 可以不加参数,该程序会自动根据内存大小分配适当的内存空间作为高速缓 存),再安装Windows XP即可。另外提醒大家,这个程序在安装完...
这对于排查系统启动和运行过程中的驱动问题非常有帮助。 其次,DriverMonitor可以提供驱动程序的详细信息。用户可以通过DriverMonitor查看每个驱动程序的版本号、制造商、文件路径等信息文些信息对于识别和更新驱动...
启动项目,在控制台看到Mblog加载完毕的信息后,表示启动成功 打开浏览器输入:http//localhost/mblog/ (此处仅是示例,具体具体端口因人而异),访问成功即部署完毕 后台管理的地址是 /admin, 如果你是管理员账号点...
性能改进模块能优化和管理已安装的服务,管理WIN启动加载的应用程序,优化INTEL带宽系统设置,管理当前正在运行的系统进程,卸载已安装的应用程序,自定义优化模块能够访问许多隐藏的系统设置,管理已关联的文件格式...
1017 系统试图将文件加载或还原到注册表中,但是,指定的文件不是注册表文件格式。 1018 试图在注册表键(已经标记为删除)中完成的操作非法。 1019 系统无法在注册表日志文件中分配所需的空间。 1020...
本书深入介绍和讨论了Solaris系统管理各个方面的概念、方法和注意事项。其主要内容有:邮件服务;NIS+;自动加载程序服务;服务访问工具;应用软件;Shell编程介绍;系统安全。本书可供计算机系统管理、维护人员和...
因为即使删除了某个程序,可是它使用的DLL文件仍然会存在,因而随着使用日久,Windows的启动和退出时需要加载的DLL动态链接库文件越来越大,自然系统运行速度也就越来越慢了。这时我们就需要使用一些彻底删除DLL的...
枚举在系统下一次启动时所要执行的文件重命名和删除命令的列表 Process Explorer 找出进程打开了哪些文件、注册表项和其他对象,已加载了哪些 DLL 等信息。这个功能异常强大的实用工具甚至可以显示每个进程的所有...
可自动在加载音乐时自动查找同目录下的对应的同名或者包含歌曲名称的歌词文件。当然,也支持手动加载歌词文件。不支持从网络搜索歌词的功能。有能力和时间的可以添加该功能。 5、支持桌面卡拉OK歌词显示效果,可以...
发射 macOS .plist文件的集合,以自动执行后台任务 这些文件可以放置在三个位置之一,结果如下: 地点 加载时 为了谁 所有权 ... 加载后,它将尝试每5分钟运行一次,直到成功,然后再每6小时运行一次。