@Configuration public class ApplicationConfigurer { private static Logger logger = Logger.getLogger(ApplicationConfigurer.class); public static final String SPRING_CONFIG_LOCATION = "spring.config.location"; /** * 自定义配置加载,方法定义为static的,保证优先加载 * @return */ @Bean public static PropertyPlaceholderConfigurer properties() { final PropertyPlaceholderConfigurer ppc = new PropertyPlaceholderConfigurer(); ppc.setIgnoreResourceNotFound(true); final List<Resource> resourceLst = new ArrayList<Resource>(); if(System.getProperty(SPRING_CONFIG_LOCATION) != null){ String configFilePath = System.getProperty(SPRING_CONFIG_LOCATION); String[] configFiles = configFilePath.split(",|;"); FileSystemResource res =null; for (String configFile : configFiles) { if (configFile.startsWith("file:")){ resourceLst.add(new FileSystemResource(configFile)); }else { resourceLst.add( new ClassPathResource(configFile)); } } }else { resourceLst.add(new ClassPathResource("config/application.properties")); resourceLst.add(new ClassPathResource("config/kafka.properties")); } ppc.setLocations(resourceLst.toArray(new Resource[]{})); return ppc; } }
- 浏览: 65849 次
- 性别:
- 来自: 芜湖
文章分类
最新评论
发表评论
-
fastjson JSONPATH
2020-02-27 14:49 698https://github.com/alibaba/fas ... -
java.lang.OutOfMemoryError
2018-08-21 11:09 403PermGen space的全称是Perma ... -
CountDownLatch、CyclicBarrier和Semaphore
2018-08-01 13:04 439Java并发编程:CountDownLa ... -
CountDownLatch
2018-08-01 11:54 441CountDownLatch是一个同步工具类,它允许一个或 ... -
利用 java random实现加权均衡算法
2018-06-11 19:57 2344算法设计思路如下: 1、将一组加权值在数轴上分布每个加权 ... -
springboot-jmx监控
2018-05-31 13:22 653package com.yong; import o ... -
springboot使用jasypt对的datasource密码加密
2018-05-14 20:38 11181.Maven 依赖 <dependenc ... -
spring boot 限制初始值大小及参数
2018-05-12 20:40 0要加“m”说明是MB,否则就是KB了. -Xms:初始 ... -
spring quartz定时任务
2018-05-09 15:07 350copy from: https://www.cnblog ... -
Spring Boot集成Quartz-动态任务管理
2018-05-09 11:22 439copy from:http://wuxinshui.git ... -
aviator表达式执行引擎
2018-04-27 11:08 1229官方文档 https://code.google.com/ ... -
HTTP-CLIENT支持的上传类型
2018-04-13 20:32 5721. 概述 本教程我们将描述如何使用HttpClient ... -
HTTP-CLIENT文件上传下载
2018-04-13 20:27 449copy from https://www.cnblogs ... -
动态延迟加载JS
2017-05-11 13:09 352延迟3秒后加载指定JS var _COL_SELEC ... -
tomcat监听调试配置
2017-02-08 11:12 0tomcat远程调试JPDA Tomcat 远程调试JPD ... -
java key tool 生成ca证书
2016-09-26 14:15 1462keytool生成证书 验证是 ... -
java 内存管理
2016-02-28 15:00 4731、java应用程序生产内存快照 jmap -dump:f ... -
Java中的JavaCore/HeapDump文件及其分析方法
2016-02-28 14:43 484产生时间 Java程序运行时,有时会产生JavaCore及 ... -
TOMCAT SSL 配置
2016-02-26 10:20 4511、生成证书 1.1、Cmd 进入命令行 1.2、输入如 ... -
groovy嵌入java
2016-01-22 13:33 6711.使用Shell调试脚本或表达式在Groovy中你可以使 ...
相关推荐
Spring如何使用...使用PropertyPlaceholderConfigurer可以将配置文件的路径放在java虚拟机JVM的自定义变量中,例如:-Ddev.config=/dev.properties,这样可以实现配置文件的路径根据环境的变化而变化。 ...
Spring 中 PropertyPlaceholderConfigurer 的使用 PropertyPlaceholderConfigurer 是 Spring 框架中的一个重要组件,用于加载和管理 Properties 文件。它能够将 Properties 文件中的键值对注入到 Spring 的 bean 中...
在Spring框架中,属性占位符`PropertyPlaceholderConfigurer`是一个重要的工具,用于处理配置文件中的属性值引用。它使得我们可以在XML配置文件中使用占位符`${...}`来引用外部属性文件中的值,从而使应用配置更加...
在Spring中,`PropertyPlaceholderConfigurer`是一个非常重要的类,它用于处理属性文件中的占位符,将它们替换为实际的值。这在配置管理中起到了关键作用,特别是在大型分布式系统中,动态配置管理变得尤为重要。...
Spring Boot 注入 Property 的三种方式 Spring Boot 是一个流行的 Java 框架,它提供了多种方式来注入 Property。Property 是一个配置文件,用于存储应用程序的配置信息。在 Spring Boot 中,Property 可以通过多种...
Spring Boot 外部配置(配置中心化)详解 Spring Boot 框架提供了多种方式来进行外部配置,其中配置中心化是其中一种重要的方式。本文将详细介绍 Spring Boot 外部配置(配置中心化)的实现方式和原理。 配置中心...
区分环境配置与代码配置,使用Spring框架中的PropertyPlaceholderConfigurer、Environment抽象与@Value注解,以及profiles来适应不同的运行环境和测试环境。 5. 集中式、日志化配置 以Spring Cloud为基础,介绍了...
`org.springframework.beans.factory.config.PropertyPlaceholderConfigurer` 是Spring框架中的一个重要组件,主要负责处理配置文件中的占位符替换。这个类是Spring在初始化bean时用来解析和注入环境变量或系统属性...
除了这两种方式,Spring Boot引入了更强大的`ConfigDataLocationResolver`和`ConfigDataLoader`接口,它们允许我们自定义配置数据的加载逻辑,支持更丰富的数据源,如Git、HTTP等。 在实际应用中,我们可能还需要...
Spring Boot引入了`@ConfigurationProperties`注解,允许我们将属性文件中的整个段落映射到一个Java类的字段上,提供更强大的类型安全和对象模型绑定。 7. **YAML格式** 虽然这里提到的是属性文件,但Spring Boot...
3. **使用Spring Boot**:考虑将项目迁移到Spring Boot,它可以简化部署过程,自动配置许多Spring组件,同时支持嵌入式Tomcat服务器。 4. **单元测试与集成测试**:添加JUnit和Mockito等测试框架,编写单元测试和...
`PropertyPlaceholderConfigurer`是Spring早期版本中用于注入properties文件中值的bean,而`@ConfigurationProperties`是Spring Boot引入的,更适合现代Spring应用。 使用`PropertyPlaceholderConfigurer`的例子...
在Spring框架中,`PropertyPlaceholderConfigurer`是一种特殊的Bean,它被用来处理Spring配置文件中的占位符(placeholder),并将它们替换为具体的值。这些值通常来自外部的属性文件,如`.properties`或`.xml`等。...
9. **环境和配置源**:Spring的`Environment`接口提供了获取当前运行环境的配置属性,而`ConfigurableEnvironment`允许添加自定义配置源,如文件、系统属性、命令行参数等。 10. **Profile支持**:Spring支持多环境...
Spring默认的`PropertyPlaceholderConfigurer`不直接支持加密的属性文件,但它提供了扩展点,允许我们自定义实现来处理加密后的属性。以下是一种实现方式: 1. 创建一个自定义的`PropertyPlaceholderConfigurer`...
PropertyPlaceholderConfigurer示例 3.7.2.2. PropertyOverrideConfigurer示例 3.7.3. 使用FactoryBean定制实例化逻辑 3.8. ApplicationContext 3.8.1. 利用MessageSource实现国际化 3.8.2. 事件 3.8.3. 底层资源的...
在IT行业中,尤其是在开发企业级应用时,...Spring提供了`PropertyPlaceholderConfigurer`和`EncryptablePropertyPlaceholderConfigurer`来实现这个功能。首先,我们需要创建一个解密器类,如下所示: ```xml ...
Spring通过`@Value`注解和`PropertyPlaceholderConfigurer`(在Spring 3.1以后被`@ConfigurationProperties`替代)等方式来实现属性注入。下面,我们将深入探讨这一概念及其应用。 首先,让我们了解什么是属性文件...
- **PropertyPlaceholderConfigurer** 和 **PropertyOverrideConfigurer**:用于在运行时动态替换Bean配置中的占位符。 ### 结论 Spring框架以其强大的功能和灵活性,成为Java企业级应用开发的首选框架之一。通过...
Spring框架允许开发者自定义Bean类,并通过BeanDefinition将其配置到容器中。 ##### 3.2.4 Bean 标识符 (id 和 name) Bean的标识符用于唯一标识一个Bean。Spring框架允许使用id或name属性来为Bean指定标识符。 ###...