Maison  >  Article  >  Java  >  Utilisez Java pour créer un module simple de gestion des connexions FTP (développement de logiciels FTP 1)

Utilisez Java pour créer un module simple de gestion des connexions FTP (développement de logiciels FTP 1)

Y2J
Y2Joriginal
2017-04-21 16:42:452189parcourir

Cet article présente la méthode d'implémentation du module de gestion des connexions FTP pour votre référence. Le contenu spécifique est le suivant

(1) Connexion FTP

Exécutez le Client FTP Enfin, la première étape consiste à vous connecter au serveur FTP. Vous devez saisir l'adresse IP, le nom d'utilisateur, le mot de passe et le numéro de port du serveur FTP et cliquer sur le bouton de connexion pour commencer la connexion au serveur FTP. est illustré dans la figure ci-dessous.

Après avoir cliqué sur le bouton "Connecter", la méthode linkButtonActionPerformed(ActionEvent evt) de la classe com.oyp.ftp.FTPClientFrame sera appelée. Le programme de code principal est le suivant. suit

/** 
* 连接按钮的事件处理方法 
*/ 
rivate void linkButtonActionPerformed(java.awt.event.ActionEvent evt) { 
try { 
  String server = serverTextField.getText(); // 获取服务器地址 
  if (server == null) { 
    return; 
  } 
  String portStr = portTextField.getText(); // 获取端口号 
  if (portStr == null) { 
    portStr = "21"; 
  } 
  int port = Integer.parseInt(portStr.trim()); 
  String userStr = userTextField.getText(); // 获取用户名 
  userStr = userStr == null ? "" : userStr.trim(); 
  String passStr = PassField.getText(); // 获取密码 
  passStr = passStr == null ? "" : passStr.trim(); 
  cutLinkButton.doClick(); 
  ftpClient = new FtpClient(); 
  ftpClient.openServer(server.trim(), port); // 连接服务器 
  ftpClient.login(userStr, passStr); // 登录服务器 
  ftpClient.binary(); // 使用二进制传输模式 
  if (ftpClient.serverIsOpen()) { // 如果连接成功 
    CUT_LINK_ACTION.setEnabled(true); // 设置断开按钮可用 
  } else { // 否则 
    CUT_LINK_ACTION.setEnabled(false); // 设置断开按钮不可用 
    return; // 并结束事件处理 
  } 
  // 设置本地资源管理面板的FTP连接信息 
  localPanel.setFtpClient(server, port, userStr, passStr); 
  // 设置上传按钮可用 
  localPanel.getActionMap().get("uploadAction").setEnabled(true); 
  ftpPanel.setFtpClient(ftpClient);// 设置FTP资源管理面板的FTP连接信息 
  // 设置下载按钮可用 
  ftpPanel.getActionMap().get("downAction").setEnabled(true); 
  ftpPanel.refreshCurrentFolder();// 刷新FTP资源管理面板的当前文件夹 
  queuePanel.startQueue(); // 启动任务队列线程 
} catch (Exception ex) { 
  ex.printStackTrace(); 
}

(2) Déconnexion FTP

Cliquer sur le bouton "Déconnecter" arrêtera le fil de téléchargement, arrêtera le fil de téléchargement, effacera la file d'attente des tâches, effacera le contenu de la table des ressources FTP et effacez la file d'attente du panneau local. Attendez, l'organigramme du module de connexion du terminal de déconnexion est présenté sur la figure.


Cliquer sur le bouton "Déconnecter" déclenchera la méthode actionPerformed(ActionEvent e) de la classe com.oyp.ftp.CutLinkAction. Son code principal est le suivant.

/** 
 * 处理断开按钮的按钮动作事件的方法 
 */ 
@Override 
public void actionPerformed(ActionEvent e) { 
  try { 
    frame.ftpPanel.stopDownThread(); // 停止下载线程 
    frame.localPanel.stopUploadThread(); // 停止上传线程 
    frame.getFtpPanel().getQueue().clear(); // 清空任务队列 
    frame.getFtpPanel().clearTable(); // 清除FTP资源表格内容 
    frame.getLocalPanel().getQueue().clear(); // 清除本地面板的队列 
    // 如果FTP连接对象存在,并且已经连接FTP服务器 
    if (frame.ftpClient != null && frame.ftpClient.serverIsOpen()) { 
      frame.ftpClient.sendServer("quit\r\n"); // 发送断开连接的FTP协议的命令 
      frame.ftpClient.readServerResponse(); // 读取返回编码 
      frame.ftpClient = null; 
    } 
    // 设置上传按钮不可用 
    frame.localPanel.getActionMap().get("uploadAction").setEnabled( 
        false); 
    // 设置下载按钮不可用 
    frame.ftpPanel.getActionMap().get("downAction").setEnabled(false); 
    setEnabled(false); // 设置本按钮(断开)不可用 
  } catch (IOException e1) { 
    e1.printStackTrace(); 
  } 
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn