`

使用spring中抽象的资源加载配置文件

阅读更多
   熟悉spring的人都知道, spring把配置文件等抽象为了Resource,然后对Resource做了扩充,包括文件资源,网络资源等等。加载配置文件有时候由于打包等原因导致读取不到配置文件等问题经常遇到,现在使用spring的ResourceLoader来解决这块的问题。

1. 加载文件:
     使用FileSystemResourceLoader加载文件;
2. 加载classpath文件:
      使用ClassPathResourceLoader加载文件(包括打包之后在JAR包里的配置文件);

但是这样很难记,spring做了路由, 直接使用DefaultResourceLoader就OK, 代码如下:
加载classpath下(包括jar包中的文件)
    @Test
    public void testClassPathPropertyFile() throws IOException {
        String locationPattern = "classpath:ognl/wei.properties";
        ResourceLoader loader = new DefaultResourceLoader();
        Resource resource = loader.getResource(locationPattern);
        Properties prop = new Properties();
        prop.load(resource.getInputStream());
        for (Object key : prop.keySet()) {
            System.out.println("key:" + key + ", value:"
                    + prop.getProperty((String) key));
        }
    }


加载文件:只要把String locationPattern = "classpath:ognl/wei.properties";换成String locationPattern = "file:ognl/wei.properties";就正常了
分享到:
评论

相关推荐

    Spring动态加载配置文件

    本文档是很专业的 Spring动态加载配置文件,实现热部署方案。

    如何加载jar包中的spring配置文件

    springmvc项目中如何加载jar包中的spring配置文件

    spring boot中配置mybatis热加载相关文件

    spring boot中配置mybatis xml资源文件热加载的方法以及相关文件

    spring boot中配置mybatis热加载.zip

    spring boot中配置mybatis xml资源文件热加载的方法以及相关文件

    spring boot加载第三方jar包的配置文件的方法

    本篇文章主要介绍了spring boot加载第三方jar包的配置文件的方法,详细的介绍了spring boot jar包配置文件的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    SpringBoot在yml配置文件中配置druid的操作

    最新版的druid和旧版在filter配置方面有些不同,以下是旧版druid中配置filter: spring: ##数据库连接信息 datasource: url: jdbc:mysql://localhost:3306/young username: root password: root driver-class...

    spring-boot读取配置文件示例

    本资源对spring-boot中的核心配置文件进行详细介绍,具体内容参考博客:http://blog.csdn.net/pengjunlee/article/details/79640361,包括:核心配置文件介绍,读取配置,动态加载配置等。

    在Spring Boot中加载XML配置的完整步骤

    主要给大家介绍了关于在Spring Boot中加载XML配置的完整步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    Spring中文帮助文档

    6.8.4. 在Spring应用中使用AspectJ加载时织入(LTW) 6.9. 更多资源 7. Spring AOP APIs 7.1. 简介 7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点运算 7.2.3. AspectJ切入点表达式 7.2.4. 便利的切入...

    配置Spring.Net所用的dll文件

    该资源是配置Spring.Net所需的dll文件,以及在出现如果出现未能加载文件或程序集“System.Web.Http.WebHost, Version=4.0.0.0, ”或它的某一个依赖项。系统找不到指定的文件。需要添加对应的程序集

    Spring攻略(第二版 中文高清版).part2

    6.2 在你的Servlet和过滤器中使用Spring 214 6.2.1 问题 214 6.2.2 解决方案 215 6.2.3 工作原理 215 6.3 将Spring与Struts 1.x集成 220 6.3.1 问题 220 6.3.2 解决方案 220 6.3.3 工作原理 220 6.4...

    Spring Boot学习资料教程.docx

    配置文件 YAML 配置文件讲解 Profile模式 配置文件优先级 外部配置加载顺序自动配置原理 日志处理 日志框架介绍 SLF4j的使用日志关系 日志的使用 Web实战 创建项目 静态资源映射规则模板引擎 Thymeleaf使用 ...

    Spring API

    6.8.4. 在Spring应用中使用AspectJ加载时织入(LTW) 6.9. 更多资源 7. Spring AOP APIs 7.1. 简介 7.2. Spring中的切入点API 7.2.1. 概念 7.2.2. 切入点运算 7.2.3. AspectJ切入点表达式 7.2.4. 便利的切入...

    Spring.3.x企业应用开发实战(完整版).part2

    3.3.2 资源加载 3.4 BeanFactory和ApplicationContext 3.4.1 BeanFactory介绍 3.4.2 ApplicationContext介绍 3.4.3 父子容器 3.5 Bean的生命周期 3.5.1 BeanFactory中Bean的生命周期 3.5.2 ApplicationContext中Bean...

    Spring Boot中文文档.rar

    配置文件特定的配置文件 26.记录 26.1.日志格式 26.2.控制台输出 26.2.1.彩色编码输出 26.3.文件输出 26.4.日志级别 26.5.日志组 26.6.自定义日志配置 26.7.Logback Extensions 26.7....

    Spring攻略(第二版 中文高清版).part1

    6.2 在你的Servlet和过滤器中使用Spring 214 6.2.1 问题 214 6.2.2 解决方案 215 6.2.3 工作原理 215 6.3 将Spring与Struts 1.x集成 220 6.3.1 问题 220 6.3.2 解决方案 220 6.3.3 工作原理 220 6.4...

    从零开始学Spring Boot

    1.18 Spring Boot使用Druid和监控配置 1.19 Spring Boot使用Druid(编程注入) 1.20 Spring Boot普通类调用bean 1.21 使用模板(thymeleaf-freemarker) 1.22 Spring Boot 添加JSP支持 1.23 Spring Boot Servlet ...

    Spring3.x企业应用开发实战(完整版) part1

    3.3.2 资源加载 3.4 BeanFactory和ApplicationContext 3.4.1 BeanFactory介绍 3.4.2 ApplicationContext介绍 3.4.3 父子容器 3.5 Bean的生命周期 3.5.1 BeanFactory中Bean的生命周期 3.5.2 ApplicationContext中Bean...

    springboot知识点整理

    2.9 配置文件的加载位置 33 2.10 外部配置加载顺序 36 2.11 自动配置原理 37 2.12 @Conditional派生注解 41 3 Spring Boot与日志 42 3.1 日志框架分类和选择 42 3.2 SLF4j使用 43 3.3 其他日志框架统一转换成slf4j+...

    spring security 参考手册中文版

    作为用户在Spring MVC测试中使用注释运行 108 12.2.4测试HTTP基本认证 109 12.3 SecurityMockMvcRequestBuilders 109 12.3.1测试基于表单的认证 109 12.3.2测试注销 110 12.4 SecurityMockMvcResultMatchers 110 ...

Global site tag (gtag.js) - Google Analytics