點擊“連接”按鈕后,會調(diào)用com.oyp.ftp.FTPClientFrame類的linkButtonActionPer" />

日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

Java語言實現(xiàn)簡單FTP軟件------>連接管理模塊的

系統(tǒng) 2263 0

(1) FTP 連接

運行 FTP 客戶端后,首先是連接 FTP 服務(wù)器,需要輸入 FTP 服務(wù)器的 IP 地址及用戶名、密碼以及端口號后點擊連接按鈕開始連接 FTP 服務(wù)器,連接流程圖如下圖 所示。

Java語言實現(xiàn)簡單FTP軟件------>連接管理模塊的實現(xiàn):主機與服務(wù)器之間的連接與關(guān)閉操作(八)

點擊“連接”按鈕后,會調(diào)用com.oyp.ftp.FTPClientFrame類的linkButtonActionPerformed(ActionEventevt)方法,其主要代碼程序如下

            /**
	 * 連接按鈕的事件處理方法
	 */
	private void linkButtonActionPerformed(java.awt.event.ActionEvent evt) {
		try {
			String server = serverTextField.getText(); // 獲取服務(wù)器地址
			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); // 連接服務(wù)器
			ftpClient.login(userStr, passStr); // 登錄服務(wù)器
			ftpClient.binary(); // 使用二進制傳輸模式
			if (ftpClient.serverIsOpen()) { // 如果連接成功
				CUT_LINK_ACTION.setEnabled(true); // 設(shè)置斷開按鈕可用
			} else { // 否則
				CUT_LINK_ACTION.setEnabled(false); // 設(shè)置斷開按鈕不可用
				return; // 并結(jié)束事件處理
			}
			// 設(shè)置本地資源管理面板的FTP連接信息
			localPanel.setFtpClient(server, port, userStr, passStr);
			// 設(shè)置上傳按鈕可用
			localPanel.getActionMap().get("uploadAction").setEnabled(true);
			ftpPanel.setFtpClient(ftpClient);// 設(shè)置FTP資源管理面板的FTP連接信息
			// 設(shè)置下載按鈕可用
			ftpPanel.getActionMap().get("downAction").setEnabled(true);
			ftpPanel.refreshCurrentFolder();// 刷新FTP資源管理面板的當(dāng)前文件夾
			queuePanel.startQueue(); // 啟動任務(wù)隊列線程
		} catch (Exception ex) {
			ex.printStackTrace();
		}
	}
  


(2) FTP 斷開

點擊 斷開 按鈕, 會停止上傳線程,停止下載線程,清空任務(wù)隊列,清除 FTP 資源表格內(nèi)容 ,清除本地面板的隊列等,斷開端連接模塊流程圖如圖所示。

Java語言實現(xiàn)簡單FTP軟件------>連接管理模塊的實現(xiàn):主機與服務(wù)器之間的連接與關(guān)閉操作(八)


點擊“斷開”按鈕,會觸發(fā)com.oyp.ftp.CutLinkAction類的actionPerformed(ActionEvente)方法,其主要代碼如下

    	/**
	 * 處理斷開按鈕的按鈕動作事件的方法
	 */
	@Override
	public void actionPerformed(ActionEvent e) {
		try {
			frame.ftpPanel.stopDownThread(); // 停止下載線程
			frame.localPanel.stopUploadThread(); // 停止上傳線程
			frame.getFtpPanel().getQueue().clear(); // 清空任務(wù)隊列
			frame.getFtpPanel().clearTable(); // 清除FTP資源表格內(nèi)容
			frame.getLocalPanel().getQueue().clear(); // 清除本地面板的隊列
			// 如果FTP連接對象存在,并且已經(jīng)連接FTP服務(wù)器
			if (frame.ftpClient != null && frame.ftpClient.serverIsOpen()) {
				frame.ftpClient.sendServer("quit\r\n"); // 發(fā)送斷開連接的FTP協(xié)議的命令
				frame.ftpClient.readServerResponse(); // 讀取返回編碼
				frame.ftpClient = null;
			}
			// 設(shè)置上傳按鈕不可用
			frame.localPanel.getActionMap().get("uploadAction").setEnabled(
					false);
			// 設(shè)置下載按鈕不可用
			frame.ftpPanel.getActionMap().get("downAction").setEnabled(false);
			setEnabled(false); // 設(shè)置本按鈕(斷開)不可用
		} catch (IOException e1) {
			e1.printStackTrace();
		}
	}
  


==================================================================================================

作者:歐陽鵬 歡迎轉(zhuǎn)載,與人分享是進步的源泉!

轉(zhuǎn)載請保留原文地址 http://blog.csdn.net/ouyang_peng

===================================================================================================


Java語言實現(xiàn)簡單FTP軟件------>連接管理模塊的實現(xiàn):主機與服務(wù)器之間的連接與關(guān)閉操作(八)


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 瑞金市| 荣成市| 阳原县| 宽甸| 宜昌市| 元谋县| 光山县| 藁城市| 云南省| 苍山县| 偏关县| 汉沽区| 新津县| 曲靖市| 中江县| 西林县| 渝北区| 胶州市| 班戈县| 绥芬河市| 涡阳县| 武清区| 台中县| 西和县| 五河县| 襄樊市| 芜湖县| 剑阁县| 西充县| 石阡县| 东乌| 丘北县| 惠安县| 诏安县| 贺兰县| 宁陕县| 南平市| 长子县| 瑞丽市| 当阳市| 涪陵区|