1

我使用spring启动在openshit(tomcat7类型)中创建了应用程序。以下是我的连接属性无法使用spring启动连接openshift mysql

# Remote Datasource Configuration 
spring.datasource.url=jdbc:mysql://127.3.175.2:3306/sivam 
spring.datasource.username=xxx 
spring.datasource.password=yyy 

当我试图部署我的应用程序时,它没有连接到数据库。不幸的是,由于代理设置,我现在无法访问日志。 相同的代码在我的系统中使用本地数据库凭据正常工作。

# Local Datasource Configuration 
spring.datasource.url=jdbc:mysql://localhost:3306/sivam 
spring.datasource.username=xxx 
spring.datasource.password =yyy 

此外,我已经检查使用正常的JDBC连接(的Class.forName()等)远程分贝凭证和其正确&部署取出由openshift MySQL数据库中的记录。所以我的困难只在春季启动,我需要为此做出任何特定的更改吗?

+0

您正在使用哪种版本的弹簧引导? –

回答

1

最后我找到了问题并修复了它。 其实问题是spring引导的最新版本,它使用与Java 7一起编译的tomcat版本,所以我们需要做一些解决方法才能使它工作。

<properties> 
    <tomcat.version>7.0.59</tomcat.version> 
</properties> 

<dependency> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-data-jpa</artifactId> 
    <exclusions> 
     <exclusion> 
      <groupId>javax.transaction</groupId> 
      <artifactId>javax.transaction-api</artifactId> 
     </exclusion> 
    </exclusions> 
</dependency> 
<dependency> 
    <groupId>org.springframework.boot</groupId> 
    <artifactId>spring-boot-starter-actuator</artifactId> 
</dependency> 
<dependency> 
    <groupId>org.jboss.spec.javax.transaction</groupId> 
    <artifactId>jboss-transaction-api_1.2_spec</artifactId> 
    <version>1.0.0.Final</version> 
</dependency> 

我的应用程序被部署到openshift PaaS服务器并按预期工作。