【问题标题】:Are inactive Profiles in Spring Boot included in jar file?Spring Boot 中的非活动配置文件是否包含在 jar 文件中?
【发布时间】:2016-03-15 20:27:41
【问题描述】:

我想创建多个配置文件。我想创建一个测试、登台和生产配置文件。对于暂存,我想设置将加载到嵌入式 Hibernate 数据库中的工程数据,以便我可以根据预设的暂存数据测试我的暂存应用程序。

我只是好奇将我的最终应用程序转换为 jar 文件时它是如何工作的。当我最终在我的应用程序上执行clean install 时,非活动配置文件是否会包含在我的文件中。我只关心应用程序的大小。我知道就内存使用而言,它可能不会有任何区别。但是通过使用属于非活动配置文件的未使用配置是否会使我的应用程序更大。

【问题讨论】:

    标签: java spring spring-mvc spring-boot spring-integration


    【解决方案1】:

    bean 定义在 jar 文件中,但只有活动配置文件中的 bean 被加载到内存中。所以 jar 会更大一些,Spring 将不得不跳过不活动的定义,但仅此而已。一般不用担心。

    【讨论】:

    • 你是对的,不用担心。但目前困扰我的是以下情况。假设您有一个应用程序,并且您希望它在不同的客户上运行。现在让我们假设一切都保持不变,只有您的数据库设置不同,并且您通过配置文件 db_customer1 和 db_customer2 控制它们。现在我不想推出一个客户1可以访问客户2数据库配置的软件,反之亦然。也许这只是知识的泄漏。您对如何实现这一点有什么建议?
    • 不要对 4 年前的答案提出新问题。这个问题是关于 bean 而不是配置属性。您的问题的解决方案是将 jar 外部的属性外部化并将文件放在类路径上;为每个客户提供不同的文件。如果您不明白我的意思,请提出一个更详细的新问题。
    • 谢谢,我对那个 anwser 没意见,关于新问题你是对的!
    猜你喜欢
    • 2018-03-05
    • 2021-03-02
    • 2016-10-08
    • 1970-01-01
    • 2018-11-16
    • 2018-11-11
    • 2017-10-23
    • 2021-06-24
    • 1970-01-01
    相关资源
    最近更新 更多