栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Spring Boot属性将在初始化时加载并尊重所有内容,并基于属性文件中的值控制@Aspect

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring Boot属性将在初始化时加载并尊重所有内容,并基于属性文件中的值控制@Aspect

看来Spring默认情况下会在初始化时加载一些属性,除非您明确编写了覆盖它们的逻辑
(如我所写的那样

MainClass.java

,否则没有任何选项可以覆盖这些属性。其中一些包括(logging.file,@
Conditionalonexpression中使用的键)。

自身挑战的一些技巧:

  1. application.properties
    在类路径中指定属性。始终从此文件中读取在较早阶段加载的变量。 挑战:我已将所有属性紧密耦合到jar中,并且为了更改值,我不得不重新编译并重新启动Jar。
  2. 使用配置文件并将其定义
    application.properties
    application-profile.properties
    挑战:我必须创建这么多配置文件,但仍然存在先前的挑战。
  3. 将属性值作为JVM参数传递
    -Dproperty.key=value
    挑战:认真吗? 我应该作为JVM参数发送多少个属性?
  4. 实现
    ApplicationContextInitialize
    和重写
    initialize
    方法。 挑战:不建议重写Spring的默认行为,并且仅使用此行为读取属性文件是否不是一个过大的杀伤力?

解:

使用

-Dspring.config.location
指定属性的文件。在这种情况下,始终spring仅从指定的位置读取属性。您也可以提供多个属性文件。
请参阅此以获取更多详细信息。
似乎如果您提供属性位置,则目录会以相反的顺序弹簧加载它们。但是,如果指定文件,则遵循指定的顺序。

注意:所有这些都可以合并在一起。 要了解优先级,请参考此。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/635539.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号