小编Jor*_*ris的帖子

Spring:根据配置文件注入不同的属性文件

首先,一些背景:

我目前正在开发一个项目,我在其中使用Google的AppEngine(GAE)上的Spring框架从Google的一项服务中获取一些数据.为此,我使用了Google的OAuth工具.对于这一点,我需要使用clientSecretclientId特定于我的应用程序.由于这些是静态配置值,我使用Spring <util:properties>(链接到文档)功能将这些值插入到适当的类中.

XML配置:

<util:properties id="googleProperties" location="WEB-INF/google.properties" />
Run Code Online (Sandbox Code Playgroud)

课程用法:

@Value("#{googleProperties['google.data.api.client.id']}")
private String clientId;
Run Code Online (Sandbox Code Playgroud)

我的问题:

事实证明,生产(在App Engine上部署时)和开发(在我的本地机器上)的价值clientIdclientSecret需要不同.为了解决这个问题而不需要在部署时不断更改属性文件中的值,我一直在研究Spring的配置profiles,它允许我为生产和开发指定不同的属性文件.虽然我知道Spring配置文件是如何基于文档工作的,但我不确定在这种特定情况下适当的解决方案是什么.

换句话说,我如何根据我的应用程序是在本地部署还是在GAE上注入不同的属性文件?

java google-app-engine spring

14
推荐指数
1
解决办法
1万
查看次数

标签 统计

google-app-engine ×1

java ×1

spring ×1