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服務器並按預期工作。