我们有一个在亚马逊 EC2 上运行的应用程序。我们计划将其迁移到弹性 beantalk 环境。我们的应用程序有两个配置文件,其中存储了一些端点和一些其他控制参数。目前这些被加载为弹簧属性并注入到相应的 bean 中。我们正在考虑将它们放入 S3 存储桶并在加载弹簧上下文时读取它们。尝试不同的方法,但仍然没有运气。
1) 使用 aws elastic beanstalk 读取属性文件的最佳建议方法是什么。我们不喜欢把它们都作为环境变量吗?
2)我尝试创建一个扩展 org.springframework.beans.factory.config.PropertyPlaceholderConfigurer 的类并尝试通过覆盖 processProperties 方法。但似乎基于注释的属性注入发生在调用此方法之前。创建了实例但没有调用 processPROperties 方法?任何想法如何处理将不胜感激
编辑我使用了在 web.xml 中注册的自定义 ApplicationContextInitializer
<context-param>
<param-name>contextInitializerClasses</param-name>
<param-value>com.xxx.PropertyInitializer</param-value>
</context-param>
在初始化程序类中注入了属性。似乎它工作正常,但后来我面临着这里所说的另一个问题。 自定义属性注入后 Spring 应用程序上下文转换为代理