報錯以下信息html
com.sap.db.jdbc.exceptions.JDBCDriverException: SAP DBTech JDBC: Cannot connect to jdbc:sap://xxx.xxx.xxx.xxx:30015 [Cannot connect to host xxx.xxx.xxx.xxx:30015 [Connection refused: connect], -813.].
應該優先考慮端口號問題。java
在SAP HANA STUDIO中使用30015端口沒問題,但爲何到了JDBC這裏又有問題了呢?sql
原來該連接爲Multiple container,不一樣的container有不一樣的端口,這時候應該問數據庫管理員要正確的端口。數據庫
最終正確的端口爲30059,多是人爲或者是機器設置的。code
另外,使用JDBC的時候,應去掉pom部分的xml,以下:xml
<dependency> <groupId>com.sap.cloud.db.jdbc</groupId> <artifactId>ngdbc</artifactId> <version>2.4.63</version> <!--<type>pom</type>--> </dependency>
並且,雖然group id寫着com.sap.cloud.db.jdbc,但實際java使用的時候,仍是得這麼導入,估計是由於一些歷史遺留的命名問題:htm
Class.forName("com.sap.db.jdbc.Driver"); // 必須使用老的包路徑。使用新的com.sap.cloud.db.jdbc會報錯
裏邊詳細寫了不一樣container模式下的端口號。若是參照SAP官方教程不行,那麼就得問DB管理員具體自定義的端口號是多少了。ip
multiple container:不光是db裏的數據,還有外部應用,均可以放在container裏邊。一個數據庫能夠有多個container的概念,方便系統升級。get