更新時間:2021-08-20 12:27:56 來源:動力節(jié)點 瀏覽2774次
使用JSch進行SSH連接
<dependency>
<groupId>com.jcraftgroupId>
<artifactId>jschartifactId>
<version>0.1.54version>
dependency>
/**
* 獲取數(shù)據(jù)庫連接
*
* @return
*/
private static Connection getConnection() {
JSch jSch = new JSch();
try {
/**
* SSH_USER:服務(wù)器用戶名
* SSH_HOST:服務(wù)器地址
* SSH_PORT:服務(wù)器端口
* SSH_PASSWORD:服務(wù)器登錄密碼
*/
Session session = jSch.getSession(SSH_USER, SSH_HOST, SSH_PORT);
session.setPassword(SSH_PASSWORD);
session.setConfig("StrictHostKeyChecking", "no");
session.connect();
log.info("服務(wù)器版本信息: {}", session.getServerVersion());
/**
* 正向代理
* LOCALHOST_HOST(可缺省參數(shù),默認:127.0.0.1):綁定的地址
* LOCALHOST_PORT:本地未被占用的端口
* MYSQL_HOST:數(shù)據(jù)庫地址
* MYSQL_PORT: 數(shù)據(jù)庫端口
*/
session.setPortForwardingL(LOCALHOST_HOST ,LOCALHOST_PORT, MYSQL_HOST, MYSQL_PORT);
} catch (JSchException e) {
log.error("JSch get session failure", e);
}
Connection conn = null;
try {
/**
* URL: jdbc:mysql://127.0.0.1:3300/test **這里的地址和 LOCALHOST_HOST 一致
*/
conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
} catch (SQLException e) {
log.error("get connection failure", e);
}
return conn;
}
以上就是動力節(jié)點小編介紹的"JDBC使用SSH連接數(shù)據(jù)庫",希望對大家有幫助,想了解更多可查看Java在線學習。動力節(jié)點在線學習教程,針對沒有任何Java基礎(chǔ)的讀者學習,讓你從入門到精通,主要介紹了一些Java基礎(chǔ)的核心知識,讓同學們更好更方便的學習和了解Java編程,感興趣的同學可以關(guān)注一下。