当前位置: 首页 > 知识库问答 >
问题:

如何从 Spring Boot 应用程序属性加载 AWS 区域特定属性?

左丘曦
2023-03-14

我的 java 微服务(在 Spring boot 中开发)从应用程序属性文件加载 S3 存储桶。4 个不同 AWS 区域的 S3 存储桶名称不同(bucker-east-1、bucker-west-2 等),因此如何从应用程序属性加载特定于 AWS 区域的属性?例如,对于 us-west-2 区域,应加载 bucker-us-west-2 属性等。SPring boot 中是否存在对此类功能的现有支持?

共有1个答案

袁泓
2023-03-14

至少有几种方法可以解决这个问题。

  1. 使用环境变量:在Spring Boot的application.properties中使用env变量

可行的是,您可以将名称构造为类似<code>bucket.name的内容=

例如,您有application-us_east_1.propertiesapplication-us_east_2.properties。然后,您可以通过传入JVM参数-Dspring.profiles.active=us_east_1来激活us_east_1,从而在部署时添加适当的Spring配置文件。或者,您可以类似地使用SPRING_PROFILES_ACTIVE环境变量。

 类似资料:
  • 我在src/main/resources下创建了2个文件: 应用程序。属性 第一个具有从env变量中获取值的属性,而后者具有固定值。 根据这里的具体情况,我以这样的方式推出了Spring靴: 然而,不会产生任何影响,并且应用程序是局部的。属性似乎被忽略。 有什么提示吗?

  • 我需要你在这个问题上给我建议,在一个spring boot应用程序中,我从数据库加载一些属性,比如(cron periods,email data),我需要在应用程序上下文中导出这些属性,以便用加载的数据来spring构建相应的beans。我怎么能这样做?

  • 我在尝试添加

  • 我正在寻找解决这个问题的方法。 我有几个属性文件(application.properties、application realdb.properties)。假设我从“realdb”spring概要文件开始。现在,我想在部署到tomcat上时重写我的属性。我决定将文件放在/lib文件夹中,因为它自动位于类路径上,我没有找到更好的(即特定于应用程序的类路径文件夹) 所以我可以在那里申请。属性,只要我

  • 我正在将一个非常基本的web应用程序部署到Google应用程序引擎。我使用的是Springboot,我可以在本地很好地运行应用程序,但当我部署到Google时,应用程序引擎不会启动实例。我在启动时配置了一个云SQL数据源。 我有云sql配置属性配置src/main/Resources/application.properties.App Engine似乎找不到这些属性,所以它无法正确设置Cloud

  • 我是springboot的新手,我正在尝试从application.properties文件的位置(src/main/resources)读取属性值。但它总是返回NULL。我也需要帮助。附加类和属性文件。请注意:我试过“https://www.baeldung.com/properties-with-spring”如何访问Spring Boot中application.properties文件中定