`
tshebei
  • 浏览: 44205 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

配置文件加载

    博客分类:
  • java
阅读更多

3. WebApplicationContext<o:p></o:p>

1)  web.xml 中通过声明监听器接口 servlet类加载
通过: 
   <listener>
      <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
   </listener-->
或:
   <servlet>
      <servlet-name>SpringContextServlet</servlet-name>
      <servlet-class>org.springframework.web.context.ContextLoaderServlet</servlet-class>
      <load-on-startup>1</load-on-startup>
   </servlet>
Web
容器会自动加载 /WEB-INF/applicationContext.xml 初始化 ApplicationContex t实例;
也可以通过
   <context-param>
      <param-name>contextConfigLocation</param-name>
      <param-value>/WEB-INF/applicationContext-*.xml</param-value>
   </context-param>
使 Web 容器加载指定名称路径的 Spring 配置文件。 <o:p></o:p>

我个人认为Listerner要比Servlet更好一些,因为Listerner监听应用的启动和结束,而Servlet得启动要稍微延迟一些,如果在这时要做一些业务的操作,启动的前后顺序是有影响的。

那么在ContextLoaderListenerContextLoaderServlet中到底做了什么呢?
ContextLoaderListener为例,我们可以看到
public void contextInitialized(ServletContextEvent event) {
this.contextLoader = createContextLoader();
this.contextLoader.initWebApplicationContext(event.getServletContext());
}
protected ContextLoader createContextLoader() {
return new ContextLoader();
}
       
ContextLoader是一个工具类,用来初始化WebApplicationContext,其主要方法就是initWebApplicationContext,我们继续追踪initWebApplicationContext这个方法(具体代码我不贴出,大家可以看Spring中的源码),我们发现,原来ContextLoader是把WebApplicationContextXmlWebApplicationContext是默认实现类)放在了ServletContext中,ServletContext也是一个“容器”,也是一个类似Map的结构,而WebApplicationContextServletContext中的KEY就是WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE我们如果要使用WebApplicationContext则需要从ServletContext取出,Spring提供了一WebApplicationContextUtils类,可以方便的取出WebApplicationContext,只要把ServletContext传入就可以了。 <o:p></o:p>

<o:p> </o:p>

分享到:
评论
1 楼 zyhalj 2007-12-20  
你的文章没有写清楚使用/WEB-INF/applicationContext-*.xml这种方式时多个配置文件的加载顺序是什么,还是没有顺序关系?

相关推荐

    浅谈SpringBoot2.4 配置文件加载机制大变化

    浅谈SpringBoot2.4 配置文件加载机制大变化 Spring Boot 2.4 中的配置文件加载机制发生了重大变化,这些变化将影响到应用程序的配置文件加载方式。下面是相关知识点的详细介绍: 一、为什么要进行这些更改 随着...

    asp.net core配置文件加载过程的深入了解

    ASP.NET Core配置文件加载过程是理解应用程序如何读取和处理设置的关键部分。在这个过程中,`.NET Core` 使用 `Microsoft.Extensions.Configuration` 框架来管理配置。本文将深入探讨 ASP.NET Core 中配置文件的加载...

    WPF根据xml配置文件加载DataGrid列.zip

    在本文中,我们将深入探讨如何在WPF(Windows Presentation Foundation)应用中利用C#和XML技术,根据XML配置文件动态加载DataGrid列。这一方法提高了应用程序的灵活性,使得用户界面的调整无需更改代码,只需简单...

    Python-loadcfpython配置文件加载器

    "loadcf-python配置文件加载器"是一个专门用于处理这种任务的库,它简化了从各种格式(如JSON、YAML、INI等)加载配置的过程。这个库的目标是提供一个简单易用、功能丰富的接口,让开发者能够轻松地集成配置管理到...

    springboot 的配置文件加载顺序

    springboot 的配置文件加载顺序 https://blog.csdn.net/dearmite/article/details/131045230 本系列校训 用免费公开视频,卷飞培训班哈人!打死不报班,赚钱靠狠干! 只要自己有电脑,前后项目都能搞!N年苦学无人...

    加载src目录下的properties配置文件.docx

    加载src目录下的properties配置文件 加载src目录下的properties配置文件是Java开发中一个非常重要的知识点。 Properties文件是一种配置文件格式,用于存储应用程序的配置信息。在Java应用程序中,Properties文件...

    cJSON嵌入式配置文件加载

    在您的项目中,`mytest.c`是一个示例程序,演示了如何使用增强后的cJSON库来加载和解析包含十六进制数的配置文件。入口函数`void test()`可能是用来初始化和执行整个测试流程的关键点。在这个函数中,你可能会先创建...

    struts2配置文件加载顺序

    了解Struts2配置文件的加载顺序对于优化应用性能和解决配置问题至关重要。 Struts2的配置主要分布在以下几个文件中: 1. **struts-default.xml**:这是Struts2的核心配置文件,位于`struts2-core.jar`库的`/org/...

    加载配置文件类

    配置文件加载类 就是读取资源属性文件(properties),然后根据.properties文件的名称信息(本地化信息),匹配当前系统的国别语言信息(也可以程序指定),然后获取相应的properties文件的内容。.

    SpringBoot内部外部配置文件加载顺序解析

    SpringBoot内部外部配置文件加载顺序解析 SpringBoot框架中,配置文件的加载顺序是一个非常重要的topic。了解配置文件的加载顺序,可以帮助我们更好地管理和使用配置文件,提高项目的可维护性和可扩展性。 首先,...

    将classpath路径下的配置文件加载进properties集合,并实现Student接口,多态形式,提高程序的可维护性

    总结起来,通过将配置文件加载到Properties集合中,我们可以方便地管理和使用运行时的配置信息。实现接口并利用多态则让代码更具灵活性和可扩展性,降低程序的耦合度,提高了维护效率。这两个实践在实际开发中都是不...

    配置文件加载类

    配置文件加载类 就是读取资源属性文件(properties),然后根据.properties文件的名称信息(本地化信息),匹配当前系统的国别语言信息(也可以程序指定),然后获取相应的properties文件的内容。

    Go-go-smart-config这是一个零配置的配置文件加载模块和命令行参数处理模块

    go-smart-config这是一个【零配置】的配置文件加载模块和命令行参数处理模块

    C# WinForm动态加载DLL通过配置文件

    本知识点将深入探讨如何在C# WinForm应用中通过配置文件来实现DLL的动态加载。 首先,我们需要理解配置文件的作用。配置文件(如app.config或web.config)用于存储应用程序的设置,如数据库连接字符串、服务端口等...

    C# WinForm 动态加载DLL 通过配置文件

    总结来说,C# WinForm通过配置文件动态加载DLL的关键步骤包括:读取配置文件中的DLL路径,使用`Assembly.LoadFrom`加载DLL,通过反射获取并实例化DLL中的类,最后调用类的方法执行功能。这种方法提高了代码的可维护...

    Java 加载配置文件的方式

    在Java编程中,加载配置文件是一项常见的任务,它允许我们动态地设置应用的参数和环境,而无需修改代码。配置文件通常以.properties或.xml格式存储,包含键值对或者结构化数据,使得程序可以根据不同环境或者用户...

    Windows 不能加载用户的配置文件,但是用系

    配置文件加载机制 - **配置文件简介**:在Windows操作系统中,每个用户都有一个独特的配置文件,存储着用户的个性化设置、桌面布局等信息。当用户登录时,系统会加载相应的配置文件,确保用户界面和设置符合个人...

    Log4j配置文件解析以及加载自己的配置文件.doc

    4. **自定义配置文件加载**: 要加载自己的Log4j配置文件,可以在Java代码中指定配置文件路径,例如使用`PropertyConfigurator.configure("path/to/config/file.properties")`,或者在类路径下放置名为`log4j....

    Spring Boot多模块配置文件读取

    2. **配置文件加载** - Spring Boot会自动扫描`src/main/resources`下的`application.properties`或`application.yml`文件。 - 使用`spring.config.location`属性可以指定额外的配置文件位置,例如:`--spring....

    WindowsXP系统不能加载本地储存的配置文件.docx

    标题和描述中提到的问题是“Windows XP系统不能加载本地储存的配置...通过上述步骤,大多数情况下可以解决配置文件加载失败的问题。然而,如果问题复杂,建议寻求专业人员的帮助,以避免可能的数据损失或更严重的问题。

Global site tag (gtag.js) - Google Analytics