在AWS中更改Spring Boot webapp的application.properties

时间:2017-11-15 21:42:55

标签: java spring amazon-web-services spring-boot

我使用Boot创建了一个spring项目。该项目在当地运行良好。这是一个连接到mysql数据库的简单webapp。配置路径为:

的src /主/资源/ application.properties

使用以下参数:

spring.datasource.url = xxx
spring.datasource.username = xxx
spring.datasource.password = xxx

现在,我已经在AWS中部署了应用程序而没有任何问题。我已经配置了数据库,但是当应用程序尝试启动时,我收到此错误:

成功发送到服务器的最后一个数据包是0毫秒前。驱动程序未收到来自服务器的任何数据包。

我猜这是使用我在war文件中打包的本地配置文件。现在,我如何在AWS中更改这些值?我是否需要在该服务器中使用正确的 application.properties 打包战争?

谢谢!

3 个答案:

答案 0 :(得分:1)

请阅读:

https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-external-config.html

有几种方法可以在JAR资源之外设置配置,选择适合您的配置。

答案 1 :(得分:1)

根据个人经验,处理此问题的最佳方法是为每个环境创建属性文件。即:

application-dev.properties
application-prod.properties
application-test.properties

然后在构建之前只需将application.properties文件中的spring.profiles.active切换为dev,prod或test。

如果您的配置正常后仍然出现此错误,我的建议是检查部署服务器的IP地址是否应在生产数据库实例上获得授权才能连接。

答案 2 :(得分:0)

根据我的经验,我们可以使用spring cloud配置服务器以及git / svn等存储库上的托管属性,并根据您运行应用程序的活动配置文件动态提取它们