版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本文格式為Word版,下載可任意編輯——輔助功能模塊FTP站點(diǎn)管理實(shí)現(xiàn)方法輔佐功能模塊FTP站點(diǎn)管理實(shí)現(xiàn)方法
本文介紹了Java語(yǔ)言實(shí)現(xiàn)簡(jiǎn)樸FTP軟,輔佐功能模塊FTP站點(diǎn)管理的實(shí)現(xiàn)方法,具有確定的參考價(jià)值,感興趣的小伙伴們可以參考一下。想了解更多相關(guān)信息請(qǐng)持續(xù)關(guān)注我們我!
1、FTP站點(diǎn)管理
點(diǎn)擊“FTP站點(diǎn)管理”按鈕,彈出對(duì)話框“FTP站點(diǎn)管理”,如下圖
1連接站點(diǎn)
在FTP站點(diǎn)管理面板上選好要連接的站點(diǎn),點(diǎn)擊“連接”按鈕,那么會(huì)將主機(jī)地址、端口號(hào)、用戶名好,并將密碼清空,如下圖
到其主要代碼如下
ifcommand.equalslink//假設(shè)單擊的是連接按鈕
frame.setLinkInfobean;//調(diào)用setLinkInfo方法
dispose;//關(guān)閉FTP站點(diǎn)管理對(duì)話框
其中調(diào)用的是com.oyp.ftp.FTPClientFrame的setLinkInfoSiteInfoBeanbean方法,其代碼如下
/**
*設(shè)置FTP連接信息的方法,由FTP站點(diǎn)管理器調(diào)用
*/
ublicvoidsetLinkInfoSiteInfoBeanbean
serverTextField.setTextbean.getServer;//設(shè)置主機(jī)地址
portTextField.setTextbean.getPort+;//設(shè)置端口號(hào)
userTextField.setTextbean.getUserName;//設(shè)置用戶名
PassField.setText;//密碼清空
PassField.requestFocus;//密碼框苦求焦點(diǎn)
2添加站點(diǎn)
在FTP站點(diǎn)管理面板上點(diǎn)擊“添加”按鈕,會(huì)產(chǎn)生一個(gè)新的對(duì)話框“添加FTP站點(diǎn)”,如下圖
填寫好站點(diǎn)名稱、地址、端口號(hào)、登陸用戶后點(diǎn)擊”確定”或者”重置”按鈕會(huì)觸發(fā)com.oyp.ftp.panel.manager.SiteDialog類的actionPerformedActionEvente方法,其代碼如下
/**
*界面按鈕的事情處理方法
*/
@Override
publicvoidactionPerformedActionEvente
Stringcommand=e.getActionCommand;//獲取按鈕的command屬性
ifcommand.equalsok//假設(shè)是確定按鈕
try
ifdialog==null
dispose;
return;
//獲取界面全體文本框的內(nèi)容
StringsiteName=siteNameField.getText.trim;
Stringserver=siteAddressField.getText.trim;
StringuserName=loginUserField.getText.trim;
StringportStr=portField.getText.trim;
//判斷是否填寫了全部文本框
ifsiteName.isEmpty||server.isEmpty
||userName.isEmpty||portStr.isEmpty
JOptionPane.showMessageDialogthis,請(qǐng)?zhí)顚懭啃畔?
return;
intport=Integer.valueOfportStr;
//創(chuàng)造FTP站點(diǎn)信息的JavaBean對(duì)象
SiteInfoBeanbean=newSiteInfoBeansiteName,server,port,
userName;
//假設(shè)對(duì)話框的siteBean不為空
ifsiteBean!=null
bean.setIdsiteBean.getId;//設(shè)置FTP站點(diǎn)的ID編號(hào)
dialog.addSitebean;//調(diào)用父窗體的addSite方法添加站點(diǎn)
dialog.loadSiteList;//調(diào)用父窗體的loadSiteList方法重載站點(diǎn)列表
dispose;
catchNullPointerExceptionex
ex.printStackTrace;
return;
catchNumberFormatExceptionex
JOptionPane.showMessageDialogthis,請(qǐng)正確填寫端口號(hào)信息;
ex.printStackTrace;
return;
ifcommand.equalscancel//假設(shè)是重置按鈕
ifsiteBean==null//假設(shè)對(duì)話框的siteBean屬性為空
clearInput;//調(diào)用除掉文本框內(nèi)容的方法
else
//否那么
initInput;//初始化界面文本框內(nèi)容
3編輯站點(diǎn)
在FTP站點(diǎn)管理面板上選好要編輯的站點(diǎn),點(diǎn)擊“編輯”按鈕,會(huì)產(chǎn)生一個(gè)新的對(duì)話框“編輯FTP站點(diǎn)”,如下圖
編輯寫好站點(diǎn)名稱、地址、端口號(hào)、登陸用戶后點(diǎn)擊”確定”或者”重置”按鈕觸發(fā)com.oyp.ftp.panel.manager.SiteDialog類的actionPerformedActionEvente方法,其代碼如添加站點(diǎn)里一樣。
4刪除站點(diǎn)
在FTP站點(diǎn)管理面板上選好要?jiǎng)h除的站點(diǎn),點(diǎn)擊“刪除”按鈕,調(diào)用delSiteSiteInfoBeanbean方法,其代碼如下
/**
*刪除FTP站點(diǎn)的方法
*/
publicvoiddelSiteSiteInfoBeanbean
//從站點(diǎn)屬性集合對(duì)象中移除指定ID編號(hào)的站點(diǎn)屬性
siteInfo.removebean.getId;
try
//獲取站點(diǎn)屬性文件的輸出流
FileOutputStreamout=newFileOutputStreamFILE;
siteInfo.storeout,FTP站點(diǎn)數(shù)據(jù);//調(diào)用store方法存儲(chǔ)站點(diǎn)屬性
loadSiteList;//重新裝載站點(diǎn)列表
catchFileNotFoundExceptione
e.printStackTrace;
catchIOExceptione
e.printStackTrace;
2、上傳/下載任務(wù)終止后自動(dòng)關(guān)機(jī)
在com.oyp.ftp.panel.queue.QueuePanel類的'refreshQueue方法里會(huì)判斷任務(wù)隊(duì)列是否為空以及自動(dòng)關(guān)機(jī)按鈕是否被按下,假設(shè)得志條件那么執(zhí)行系統(tǒng)關(guān)機(jī)命令,延遲30秒后自動(dòng)關(guān)機(jī)。其代碼如下
/**
*刷新隊(duì)列的方法
*/
privatesynchronizedvoidrefreshQueue
//假設(shè)自動(dòng)關(guān)機(jī)按鈕被按下并且上傳和下載的隊(duì)列都有任務(wù)
ifframe.getShutdownButton.isSelectedlocalQueue.isEmpty
ftpQueue.isEmpty
try
//執(zhí)行系統(tǒng)關(guān)機(jī)命令,延遲30秒鐘
Runtime.getRuntime.execshutdown-s-t30;
catchIOExceptione
e.printStackTrace;
//創(chuàng)造表格的數(shù)據(jù)模型對(duì)象
DefaultTableModelmodel=newDefaultTableModelcolumns,0;
//獲取本地上傳隊(duì)列中的任務(wù)
Object[]localQueueArray=localQueue.toArray;
//遍歷本地上傳任務(wù)
forinti=0;ilocalQueueArray.length;i++
Object[]queueValue=Object[]localQueueArray[i];
ifqueueValue==null
continue;
FilelocalFile=FilequeueValue[0];
//把上傳隊(duì)列的任務(wù)添加到表格組件的數(shù)據(jù)模型中
model.addRownewObject[]localFile.getAbsoluteFile,上傳,ftpClient.getServer,i==0?正在上傳:等待上傳;
//獲取下載隊(duì)列的任務(wù)
Object[]ftpQueueArray=ftpQueue.toArray;
//遍歷下載隊(duì)列
forinti=0;iftpQueueArray.length;i++
Object[]queueValue=Object[]ftpQueueArray[i];
ifqueueValue==null
continue;
FtpFileftpFile=FtpFilequeueValue[0];
//把下載隊(duì)列的任務(wù)添加到表格組件的數(shù)據(jù)模型中
model.addRownewObject[]ftpFile.getAbsolutePath,下載,
ftpClient.getServer,i==0?正在下載:等待下載;
queueTable.setModelmodel;//設(shè)置表格使用本方法的表格數(shù)據(jù)模型
3、軟件系統(tǒng)化托盤
當(dāng)點(diǎn)擊最小化軟件后,系統(tǒng)就會(huì)變成一個(gè)生成系統(tǒng)推盤,點(diǎn)擊系統(tǒng)托盤右鍵會(huì)有“顯示主窗體”和“退出”兩個(gè)菜單,如下圖
以下是初始化系統(tǒng)托盤的代碼,如下
/**
*初始化系統(tǒng)托盤的方法
*/
privatevoidinitSystemTray
ifSystemTray.isSupported
systemTray=SystemTray.getSystemTray;
TrayIcontrayIcon=newTrayIconicon.getImage;
PopupMenupopupMenu=newPopupMenu托盤菜單;
//創(chuàng)造顯示主窗體菜單項(xiàng)
MenuItemshowMenuItem=newMenuItem顯示主窗體;
showMenuItem.addActionListenernewActionListener
@Override
publicvoidactionPerformedActionEvente
FTPClientFrame.this.setExtendedStateJFrame.NORMAL;
FTPClientFrame.this.setVisibletrue;
;
//創(chuàng)造退出菜單項(xiàng)
MenuItemexitMenuItem=newMenuItem退出;
exitMenuItem.addActionListenernewActionListener
@Override
publicvoi
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GBT 34286-2017 溫室氣體 二氧化碳測(cè)量 離軸積分腔輸出光譜法專題研究報(bào)告
- 薪酬稅務(wù)專員面試題目集
- 客戶服務(wù)經(jīng)理面試常見(jiàn)問(wèn)題及答案參考
- 銷售主管筆試題及銷售團(tuán)隊(duì)管理能力評(píng)估含答案
- 廚師長(zhǎng)崗位面試與技能測(cè)試指南
- 2025年移動(dòng)健康監(jiān)測(cè)設(shè)備開(kāi)發(fā)項(xiàng)目可行性研究報(bào)告
- 2025年數(shù)字貨幣技術(shù)應(yīng)用可行性研究報(bào)告
- 2025年智能醫(yī)療健康監(jiān)測(cè)系統(tǒng)建設(shè)可行性研究報(bào)告
- 2025年中小企業(yè)數(shù)字化轉(zhuǎn)型咨詢項(xiàng)目可行性研究報(bào)告
- 2025年數(shù)字化智能鎖研發(fā)項(xiàng)目可行性研究報(bào)告
- 2025年中國(guó)鐵路上海局集團(tuán)有限公司蕪湖車務(wù)段客運(yùn)服務(wù)人員招聘參考筆試題庫(kù)及答案解析
- 2026年門診年度護(hù)理工作計(jì)劃例文(3篇)
- 軍人野戰(zhàn)生存課件教學(xué)
- 婦科腫瘤的中醫(yī)藥治療
- 關(guān)于羊肉的營(yíng)銷策劃方案
- 杭州至寧波國(guó)家高速公路(杭紹甬高速)智慧高速機(jī)電工程質(zhì)量專項(xiàng)檢驗(yàn)評(píng)定標(biāo)準(zhǔn)
- DB37-T 5041-2015 城鎮(zhèn)供水水質(zhì)應(yīng)急監(jiān)測(cè)技術(shù)規(guī)范
- 帆船運(yùn)動(dòng)簡(jiǎn)介課件
- 3章-信息系統(tǒng)質(zhì)量管理課件
- 臨床營(yíng)養(yǎng)科工作流程
- 解讀2022年烈士紀(jì)念日PPT
評(píng)論
0/150
提交評(píng)論