问题标签 [spring-properties]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring-cloud-dataflow - Spring Dataflow 不显示属性
当我在 Spring Cloud 中创建任务Dataflow
并在 Spring Cloud 仪表板中编辑属性时,尽管已配置
,但Dataflow
我只看到标准属性。而且我不知道我设置错了什么。代码下方。label
ConfigurationProperties
工作道具:
工作:
演示应用:
spring-boot - Spring Boot - 属性 spring.config.location 不起作用
我在 application.yaml 文件中有以下部分,我正在尝试读取外部属性文件:
pom.xml 看起来像:
应用程序.java:
我尝试使用配置的配置类:
当我尝试运行微服务时,它不会映射外部配置 my-config.yml 文件中的任何配置元素。
如果我将 my-config.yml 的全部内容复制并粘贴到 application.yml 文件中,它将按预期工作,映射 MyConfig 类中的所有元素!
Spring boot 似乎拾取了 application.yml 文件下的所有元素,例如,如果我更改 server.port 属性,我可以在重新启动时看到更改,但是看起来它没有拾取“spring”元素下的任何属性。
我试图在命令行上提供该属性并且它按预期工作但是我希望在 yml 文件中使用此属性:
另外,我尝试从 application.yml 文件中指定完整位置(如上),但它不起作用。
java - 根据活动配置文件从自定义文件加载属性
我有一个带有最新 SpringBoot v.2.1.9 的应用程序。该项目包含多个自定义文件,其模式如下:
- file1-dev.properties
- file1-prod.properties
- file2-dev.properties
- file2-prod.properties 等
我想达到与 Spring 的 application-{profile}.properties 类似的行为,我的意思是从文件中加载每个自定义道具,这些道具与活动配置文件相匹配。由于大量属性,我无法将它们存储在 application-{profile}.properties 中,因为它会导致可读性问题。
我想找到一个严格的 Java 解决方案,没有任何 Maven 的解决方法,在构建后物理替换文件。你能告诉我我怎样才能达到这种方法吗?
我目前的假设是覆盖 ApplicationContextInitializer 的初始化方法,然后检查配置文件并执行逻辑以选择文件,但是我不确定这是否是最有效的方法。
非常感谢您的帮助。
java - 如何在Spring中将属性文件中的键作为环境变量注入
我在将 Spring 4.2.1 中的属性文件中的密钥作为环境变量注入时遇到问题。
我有如下 myapp.properties
请让我知道如何使用环境变量注入上述变量。
我尝试了 UPPERCASE_UNDERSCORE 格式不知何故不起作用。
春季:4.2.5-发布
java - 在 Spring 属性无效时提供更好的日志记录
使用 application.properties 文件,我的 Spring Boot 应用程序可以在其中使用一些属性值。确保必须存在强制值的一种方法是@Value
为属性添加注释。这样做的问题是,如果属性文件中没有属性值,则应用程序会严重失败。
我正在寻求一种更好的不那么可怕的方式来打印关于“缺少属性 A”的日志行,而不是整个堆栈跟踪。有没有办法在仍然使用@Value
初始化属性的同时做到这一点?例如,属性 A 是强制性的,在应用程序退出之前记录错误;缺少属性 B 但不是强制性的,会记录警告并继续应用。
spring - Spring Boot 无法从 application.yml 正确加载配置文件
我有一个 Spring Boot 项目,我正在application.yml
通过以下方式注入值application.properties
(这种设计对我来说很有意义,因为有很多微服务,application.properties
实际上是一个符号链接),如下所示:
在application.properties
:
然后在application.yml
:
这工作得很好,当我通过Environment.getProperty
或通过@Value
一切访问它时,一切都按预期工作。但是,当我尝试以相同的方式设置 Spring Profile 时,它不起作用。设置和作为SPR_PROFILE=my_profile
_application.properties
application.yml
Environment.activeProfiles
当返回${SPR_PROFILE}
(并且 spring 在此配置文件下运行)和属性Environment.getProperty("spring.profiles.active")
返回时导致 spring 不一致my_profile
。
这是预期的行为吗?这是为什么?在实际解析/替换占位符之前是否加载配置文件?
我目前的解决方法是设置spring.profiles.active=my_profile
,application.properties
但我想知道,为什么 spring 会这样。
java - 第二次调用类方法时,@Value 字段显示为空
在我的自定义注释中,我正在使用我将允许邮件的域
如果我从 rest API 调用它,每次值都在那里,但是如果我从代码中显式调用验证,我可以在调试中看到 allowedMailDomains 值为 null
但是,如果我不从属性文件和硬编码中获取,那么它就像这样同时工作
对象
在实施中
因此,在验证时转到 ValidMail 接口,并且 allowedMailDomains 值为 null
spring-boot - springboot 问题从属性文件中读取
我正在尝试读取Util
类中的属性值。我试过Environment
了@Value
。但它Null
为这些领域带来了价值。
我通过将 Util 作为@Service
类并将其依赖项注入EmployeeApplication
如下来解决了这个问题。
但是正确的方法是spring-boot
什么?我需要让它Service/Component/Repository
从属性文件中读取吗?
java - 如何将带有空格的属性绑定到 Spring application.properties 文件中的 Map 键?
给定一个 application.properties 文件:
和属性类:
我试图逃避空间key\ with\ space
,甚至是key\u0020with\u0020space
,但两者仍然像keywithspace
地图一样结束。请指出使用 Spring application.properties 添加带空格键的正确方法进行映射,谢谢。