From 84fc0679f0720da85af52e449ce873d5c0eb27bd Mon Sep 17 00:00:00 2001
From: 沈斌 <bluelazysb@hotmail.com>
Date: Tue, 30 Jan 2018 22:43:21 +0800
Subject: [PATCH] updated
---
src/main/java/com/moral/controller/UpgradeController.java | 66 ++++++++++++++++++---------------
1 files changed, 36 insertions(+), 30 deletions(-)
diff --git a/src/main/java/com/moral/controller/UpgradeController.java b/src/main/java/com/moral/controller/UpgradeController.java
index f590f8c..33bf09c 100644
--- a/src/main/java/com/moral/controller/UpgradeController.java
+++ b/src/main/java/com/moral/controller/UpgradeController.java
@@ -1,13 +1,13 @@
package com.moral.controller;
+import com.moral.common.xml.Version;
import org.apache.commons.net.ftp.FTPClient;
-import org.springframework.security.access.method.P;
+import org.dom4j.Document;
+import org.dom4j.Element;
+import org.dom4j.io.SAXReader;
import org.springframework.web.bind.annotation.*;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
+import org.xml.sax.InputSource;
+import java.io.*;
@RestController
@RequestMapping("upgrade")
@@ -22,33 +22,19 @@
private String path = "/";
@RequestMapping(value = "/index", method = RequestMethod.GET)
- public String index() throws IOException {
+ public Version index() {
+ Version version = new Version();
FTPClient ftpClient = new FTPClient();
try {
ftpClient.connect(ip, port);
ftpClient.login(userName, userPwd);
- if (path != null && path.length() > 0) {
- ftpClient.changeWorkingDirectory(path);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- String content = readFile(ftpClient);
- if(ftpClient.isConnected()) {
- ftpClient.logout();
- ftpClient.disconnect();
- }
- return content;
- }
-
- public String readFile(FTPClient ftpClient) {
- InputStream ins = null;
- StringBuilder builder = null;
- try {
- ins = ftpClient.retrieveFileStream(fileName);
- BufferedReader reader = new BufferedReader(new InputStreamReader(ins, "UTF-8"));
+ ftpClient.changeWorkingDirectory(path);
+ //ftpClient.enterRemotePassiveMode();
+ ftpClient.enterLocalPassiveMode();
+ InputStream ins = ftpClient.retrieveFileStream(fileName);
+ BufferedReader reader = new BufferedReader(new InputStreamReader(ins,"utf-8"));
String line;
- builder = new StringBuilder(150);
+ StringBuilder builder = new StringBuilder();
while ((line = reader.readLine()) != null) {
builder.append(line);
}
@@ -57,9 +43,29 @@
ins.close();
}
ftpClient.getReply();
- } catch (IOException e) {
+ String content = builder.toString();
+ if(ftpClient.isConnected()) {
+ ftpClient.logout();
+ ftpClient.disconnect();
+ }
+ SAXReader saxReader = new SAXReader();
+ Document document = saxReader.read(new InputSource(new ByteArrayInputStream(content.getBytes("utf-8"))));
+ Element root = document.getRootElement();
+ version.setVer(root.element("Ver").getText());
+ version.setFileName(root.element("FileName").getText());
+ version.setFileMD5Hash(root.element("FileMD5Hash").getText());
+ } catch (Exception e) {
e.printStackTrace();
}
- return builder.toString();
+// version.setVer("a");
+// version.setFileName("b");
+// version.setFileMD5Hash("c");
+ return version;
+ }
+
+ public static void main(String[] args) {
+ UpgradeController a = new UpgradeController();
+ Version v = a.index();
+ System.out.println(v.getVer());
}
}
--
Gitblit v1.8.0