使用计算机上的弹簧连接到RDS实例

时间:2018-01-09 22:22:07

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

我是AWS和Spring世界的新手,所以我可能会从概念上得到一些错误的东西...... 因此,我在AWS上设置了一个目前可公开访问的RDS实例。从http://cloud.spring.io/spring-cloud-aws/spring-cloud-aws.html#_data_access_with_jdbc我找到了必要的bean配置,即

<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:jdbc="http://www.springframework.org/schema/cloud/aws/jdbc"
       xmlns="http://www.springframework.org/schema/beans"
       xsi:schemaLocation="http://www.springframework.org/schema/cloud/aws/jdbc
       http://www.springframework.org/schema/cloud/aws/jdbc/spring-cloud-aws-jdbc.xsd">

 <aws-context:context-credentials>
  ...
 </aws-context:context-credentials>

 <aws-context:context-region region="..."/>

<jdbc:data-source
         db-instance-identifier="myRdsDatabase"
         password="${rdsPassword}">
</jdbc:data-source>
</beans>

同样来自互联网,我填写了......

<aws-context:context-credentials>
        <aws-context:instance-profile-credentials/>
        <aws-context:simple-credentials access-key="${accessKey:}" secret-key="${secretKey:}"/>
</aws-context:context-credentials>

问题1:运行时,我收到此错误:“没有可用的EC2元数据,因为应用程序未在EC2环境中运行。仅当应用程序在EC2实例上运行时才能进行区域检测。 “我想尝试使用配置选项解决该错误

cloud.aws.stack.auto=false
cloud.aws.region.auto=false

哪个会出现在某个.properties文件中,但我想将所有内容放在同一个xml文件中。如何将这些行转换为xml等效项?

我不知道除了在这个xml文件中的密钥和密码放在哪里,所以我就这样做了;那么问题2是这些东西应该去哪里?

问题3:我假设jdbcTemplate可以正常工作,因为配置了jdbc的数据源。真的吗?我可以从这个配置设置中使用行jdbcTemplate.execute("DROP TABLE t IF EXISTS");并在我的RDS中发生这种情况吗?

问题4:如果我目前的目标只是连接并能够进行SQL查询,我是否遗漏了我的设置中的任何明显内容?

0 个答案:

没有答案