From 55f4c8cda0f426e3a8d31908018a6b9c890bc006 Mon Sep 17 00:00:00 2001
From: kongdeqiang <kongdeqiang@960204@163.com>
Date: 星期二, 02 十二月 2025 20:04:09 +0800
Subject: [PATCH] fix:完善逻辑
---
src/main/java/com/wgcloud/service/RouterConnectionService.java | 55 +++++++++++++++++++++++++++++++++++--------------------
1 files changed, 35 insertions(+), 20 deletions(-)
diff --git a/src/main/java/com/wgcloud/service/RouterConnectionService.java b/src/main/java/com/wgcloud/service/RouterConnectionService.java
index afc6364..3490c57 100644
--- a/src/main/java/com/wgcloud/service/RouterConnectionService.java
+++ b/src/main/java/com/wgcloud/service/RouterConnectionService.java
@@ -14,25 +14,38 @@
@Service
public class RouterConnectionService {
- @Value("${router.host}")
- private String routerHost;
-
- @Value("${router.username}")
- private String routerUsername;
-
- @Value("${router.password}")
- private String routerPassword;
-
private Session session;
+
+// /**
+// * 杩炴帴鍒拌矾鐢卞櫒
+// */
+// public boolean connect() {
+// try {
+// JSch jsch = new JSch();
+// session = jsch.getSession(routerUsername, routerHost, 22);
+// session.setPassword(routerPassword);
+//
+// // 璁剧疆涓嶈繘琛屼富鏈哄瘑閽ユ鏌�
+// Properties config = new Properties();
+// config.put("StrictHostKeyChecking", "no");
+// session.setConfig(config);
+//
+// session.connect(5000); // 5绉掕秴鏃�
+// return true;
+// } catch (JSchException e) {
+// System.err.println("杩炴帴璺敱鍣ㄥけ璐�: " + e.getMessage());
+// return false;
+// }
+// }
/**
* 杩炴帴鍒拌矾鐢卞櫒
*/
- public boolean connect() {
+ public boolean connect(String username,String hostname,String password) {
try {
JSch jsch = new JSch();
- session = jsch.getSession(routerUsername, routerHost, 22);
- session.setPassword(routerPassword);
+ session = jsch.getSession(username, hostname, 22);
+ session.setPassword(password);
// 璁剧疆涓嶈繘琛屼富鏈哄瘑閽ユ鏌�
Properties config = new Properties();
@@ -59,18 +72,19 @@
/**
* 鎵ц璺敱鍣ㄥ懡浠�
*/
- public String executeCommand(String command) {
- if (!isConnected()) {
- if (!connect()) {
- return null;
- }
+ public String executeCommand(String command,String username,String password,String hostname) {
+// if (!isConnected()) {
+// if (!connect(username,hostname,password)) {
+// return null;
+// }
+// }
+ if (!connect(username,hostname,password)) {
+ return null;
}
try {
ChannelExec channel = (ChannelExec) session.openChannel("exec");
channel.setCommand(command);
- channel.connect();
-
BufferedReader reader = new BufferedReader(new InputStreamReader(channel.getInputStream()));
StringBuilder output = new StringBuilder();
String line;
@@ -81,6 +95,7 @@
reader.close();
channel.disconnect();
+ disconnect();
return output.toString();
} catch (Exception e) {
System.err.println("鎵ц鍛戒护澶辫触: " + e.getMessage());
@@ -95,4 +110,4 @@
public boolean isConnected() {
return session != null && session.isConnected();
}
-}
\ No newline at end of file
+}
--
Gitblit v1.9.1