Administrator
2022-05-12 39a93d805ce2c7990db02294b860cf9fd96b203e
ftp 数据推出账号修改
3 files modified
54 ■■■■■ changed files
src/main/java/org/springblade/common/config/FtpConfig.java 18 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/FTP/FtpUtil.java 34 ●●●● patch | view | raw | blame | history
src/main/resources/application-dev.yml 2 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/common/config/FtpConfig.java
@@ -42,6 +42,16 @@
     */
    public static String ftpPassword;
    /**
     * ftp服务器用户名
     */
    public static String ftpUserNameOut;
    /**
     * ftp服务器密码
     */
    public static String ftpPasswordOut;
    /**
     * ftp服务器路径
@@ -95,6 +105,14 @@
        FtpConfig.ftpPassword = ftpPassword;
    }
    public void setFtpUserNameOut(String ftpUserNameOut) {
        FtpConfig.ftpUserNameOut = ftpUserNameOut;
    }
    public void setFtpPasswordOut(String ftpPasswordOut) {
        FtpConfig.ftpPasswordOut = ftpPasswordOut;
    }
    public void setFtpPath(String ftpPath) {
        FtpConfig.ftpPath = ftpPath;
    }
src/main/java/org/springblade/modules/FTP/FtpUtil.java
@@ -38,17 +38,17 @@
     * 获取FTPClient对象
     *
     * @param ftpHost     FTP主机服务器
     * @param ftpPassword FTP 登录密码
     * @param ftpUserName FTP登录用户名
     * @param ftpPasswordOut FTP 登录密码
     * @param ftpUserNameOut FTP登录用户名
     * @param ftpPort     FTP端口 默认为21
     * @return
     */
    public static FTPClient getFTPClient(String ftpHost, int ftpPort, String ftpUserName, String ftpPassword) {
    public static FTPClient getFTPClient(String ftpHost, int ftpPort, String ftpUserNameOut, String ftpPasswordOut) {
        FTPClient ftpClient = null;
        try {
            ftpClient = new FTPClient();
            ftpClient.connect(ftpHost, ftpPort);// 连接FTP服务器
            ftpClient.login(ftpUserName, ftpPassword);// 登陆FTP服务器
            ftpClient.login(ftpUserNameOut, ftpPasswordOut);// 登陆FTP服务器
            if (!FTPReply.isPositiveCompletion(ftpClient.getReplyCode())) {
                logger.info("未连接到FTP,用户名或密码错误。");
                ftpClient.disconnect();
@@ -69,20 +69,20 @@
     * 从FTP服务器下载文件
     *
     * @param ftpHost     FTP IP地址
     * @param ftpUserName FTP 用户名
     * @param ftpPassword FTP用户名密码
     * @param ftpUserNameOut FTP 用户名
     * @param ftpPasswordOut FTP用户名密码
     * @param ftpPort     FTP端口
     * @param ftpPath     FTP服务器中文件所在路径 格式: ftptest/aa
     * @param localPath   下载到本地的位置 格式:H:/download
     * @param fileName    文件名称
     */
    public static void downloadFtpFile(String ftpHost, String ftpUserName, String ftpPassword, int ftpPort,
    public static void downloadFtpFile(String ftpHost, String ftpUserNameOut, String ftpPasswordOut, int ftpPort,
                                       String ftpPath, String localPath, String fileName) {
        FTPClient ftpClient = null;
        try {
            ftpClient = getFTPClient(ftpHost, ftpPort, ftpUserName, ftpPassword);
            ftpClient = getFTPClient(ftpHost, ftpPort, ftpUserNameOut, ftpPasswordOut);
            // 设置上传文件的类型为二进制类型
            if (FTPReply.isPositiveCompletion(ftpClient.sendCommand("OPTS UTF8", "ON"))) {// 开启服务器对UTF-8的支持,如果服务器支持就用UTF-8编码,否则就使用本地编码(GBK).
                LOCAL_CHARSET = "UTF-8";
@@ -135,13 +135,13 @@
    }
    public static boolean uploadFile(String ftpHost, int ftpPort, String ftpUserName, String ftpPassword,
    public static boolean uploadFile(String ftpHost, int ftpPort, String ftpUserNameOut, String ftpPasswordOut,
                                     String basePath, String filePath, String filename, InputStream input) {
        boolean result = false;
        FTPClient ftpClient = null;
        try {
            int reply;
            ftpClient = getFTPClient(ftpHost, ftpPort, ftpUserName, ftpPassword);
            ftpClient = getFTPClient(ftpHost, ftpPort, ftpUserNameOut, ftpPasswordOut);
            reply = ftpClient.getReplyCode();
            if (!FTPReply.isPositiveCompletion(reply)) {
                ftpClient.disconnect();
@@ -200,12 +200,12 @@
    }
    public static boolean deleteFile(String ftpHost, int ftpPort, String ftpUserName, String ftpPassword, String pathname,
    public static boolean deleteFile(String ftpHost, int ftpPort, String ftpUserNameOut, String ftpPasswordOut, String pathname,
                                     String filename) {
        boolean flag = false;
        FTPClient ftpClient = new FTPClient();
        try {
            ftpClient = getFTPClient(ftpHost, ftpPort, ftpUserName, ftpPassword);
            ftpClient = getFTPClient(ftpHost, ftpPort, ftpUserNameOut, ftpPasswordOut);
            // 验证FTP服务器是否登录成功
            int replyCode = ftpClient.getReplyCode();
            if (!FTPReply.isPositiveCompletion(replyCode)) {
@@ -357,7 +357,7 @@
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserName, ftpPassword, ftpPath, "/",  "nsql"+response1+".json", in1);
        FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserNameOut, ftpPasswordOut, ftpPath, "/",  "nsql"+response1+".json", in1);
        MysqlCenlint.deletess("nsql"+response1+".json");
    }
@@ -375,7 +375,7 @@
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserName, ftpPassword, ftpPath, "/",  "n"+response1+".json", in1);
        FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserNameOut, ftpPasswordOut, ftpPath, "/",  "n"+response1+".json", in1);
        MysqlCenlint.deletess("n"+response1+".json");
    }
@@ -394,7 +394,7 @@
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserName, ftpPassword, ftpPath, "/",  "nl"+response1+".json", in1);
        FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserNameOut, ftpPasswordOut, ftpPath, "/",  "nl"+response1+".json", in1);
        MysqlCenlint.deletess("nl"+response1+".json");
    }
@@ -412,7 +412,7 @@
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserName, ftpPassword, ftpPath, "/",  "nt"+response1+".json", in1);
        FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserNameOut, ftpPasswordOut, ftpPath, "/",  "nt"+response1+".json", in1);
        MysqlCenlint.deletess("nt"+response1+".json");
    }
@@ -430,7 +430,7 @@
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
        FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserName, ftpPassword, ftpPath, "/",  "ns"+response1+".json", in1);
        FtpUtil.uploadFile(ftpHost, ftpPort, ftpUserNameOut, ftpPasswordOut, ftpPath, "/",  "ns"+response1+".json", in1);
        MysqlCenlint.deletess("ns"+response1+".json");
    }
}
src/main/resources/application-dev.yml
@@ -31,6 +31,8 @@
  ftpPort: 6621
  ftpUserName: zhbain
  ftpPassword: zhbain@123
  ftpUserNameOut: baftpout
  ftpPasswordOut: baftpout
  ftpPath: anbao/
  localPath: /home/song/anbao/
  minioPath: /usr/local/minio/data/zhba/upload/picture