版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本文格式为Word版,下载可任意编辑——辅助功能模块FTP站点管理实现方法辅佐功能模块FTP站点管理实现方法
本文介绍了Java语言实现简朴FTP软,辅佐功能模块FTP站点管理的实现方法,具有确定的参考价值,感兴趣的小伙伴们可以参考一下。想了解更多相关信息请持续关注我们我!
1、FTP站点管理
点击“FTP站点管理”按钮,弹出对话框“FTP站点管理”,如下图
1连接站点
在FTP站点管理面板上选好要连接的站点,点击“连接”按钮,那么会将主机地址、端口号、用户名好,并将密码清空,如下图
到其主要代码如下
ifcommand.equalslink//假设单击的是连接按钮
frame.setLinkInfobean;//调用setLinkInfo方法
dispose;//关闭FTP站点管理对话框
其中调用的是com.oyp.ftp.FTPClientFrame的setLinkInfoSiteInfoBeanbean方法,其代码如下
/**
*设置FTP连接信息的方法,由FTP站点管理器调用
*/
ublicvoidsetLinkInfoSiteInfoBeanbean
serverTextField.setTextbean.getServer;//设置主机地址
portTextField.setTextbean.getPort+;//设置端口号
userTextField.setTextbean.getUserName;//设置用户名
PassField.setText;//密码清空
PassField.requestFocus;//密码框苦求焦点
2添加站点
在FTP站点管理面板上点击“添加”按钮,会产生一个新的对话框“添加FTP站点”,如下图
填写好站点名称、地址、端口号、登陆用户后点击”确定”或者”重置”按钮会触发com.oyp.ftp.panel.manager.SiteDialog类的actionPerformedActionEvente方法,其代码如下
/**
*界面按钮的事情处理方法
*/
@Override
publicvoidactionPerformedActionEvente
Stringcommand=e.getActionCommand;//获取按钮的command属性
ifcommand.equalsok//假设是确定按钮
try
ifdialog==null
dispose;
return;
//获取界面全体文本框的内容
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,请填写全部信息;
return;
intport=Integer.valueOfportStr;
//创造FTP站点信息的JavaBean对象
SiteInfoBeanbean=newSiteInfoBeansiteName,server,port,
userName;
//假设对话框的siteBean不为空
ifsiteBean!=null
bean.setIdsiteBean.getId;//设置FTP站点的ID编号
dialog.addSitebean;//调用父窗体的addSite方法添加站点
dialog.loadSiteList;//调用父窗体的loadSiteList方法重载站点列表
dispose;
catchNullPointerExceptionex
ex.printStackTrace;
return;
catchNumberFormatExceptionex
JOptionPane.showMessageDialogthis,请正确填写端口号信息;
ex.printStackTrace;
return;
ifcommand.equalscancel//假设是重置按钮
ifsiteBean==null//假设对话框的siteBean属性为空
clearInput;//调用除掉文本框内容的方法
else
//否那么
initInput;//初始化界面文本框内容
3编辑站点
在FTP站点管理面板上选好要编辑的站点,点击“编辑”按钮,会产生一个新的对话框“编辑FTP站点”,如下图
编辑写好站点名称、地址、端口号、登陆用户后点击”确定”或者”重置”按钮触发com.oyp.ftp.panel.manager.SiteDialog类的actionPerformedActionEvente方法,其代码如添加站点里一样。
4删除站点
在FTP站点管理面板上选好要删除的站点,点击“删除”按钮,调用delSiteSiteInfoBeanbean方法,其代码如下
/**
*删除FTP站点的方法
*/
publicvoiddelSiteSiteInfoBeanbean
//从站点属性集合对象中移除指定ID编号的站点属性
siteInfo.removebean.getId;
try
//获取站点属性文件的输出流
FileOutputStreamout=newFileOutputStreamFILE;
siteInfo.storeout,FTP站点数据;//调用store方法存储站点属性
loadSiteList;//重新装载站点列表
catchFileNotFoundExceptione
e.printStackTrace;
catchIOExceptione
e.printStackTrace;
2、上传/下载任务终止后自动关机
在com.oyp.ftp.panel.queue.QueuePanel类的'refreshQueue方法里会判断任务队列是否为空以及自动关机按钮是否被按下,假设得志条件那么执行系统关机命令,延迟30秒后自动关机。其代码如下
/**
*刷新队列的方法
*/
privatesynchronizedvoidrefreshQueue
//假设自动关机按钮被按下并且上传和下载的队列都有任务
ifframe.getShutdownButton.isSelectedlocalQueue.isEmpty
ftpQueue.isEmpty
try
//执行系统关机命令,延迟30秒钟
Runtime.getRuntime.execshutdown-s-t30;
catchIOExceptione
e.printStackTrace;
//创造表格的数据模型对象
DefaultTableModelmodel=newDefaultTableModelcolumns,0;
//获取本地上传队列中的任务
Object[]localQueueArray=localQueue.toArray;
//遍历本地上传任务
forinti=0;ilocalQueueArray.length;i++
Object[]queueValue=Object[]localQueueArray[i];
ifqueueValue==null
continue;
FilelocalFile=FilequeueValue[0];
//把上传队列的任务添加到表格组件的数据模型中
model.addRownewObject[]localFile.getAbsoluteFile,上传,ftpClient.getServer,i==0?正在上传:等待上传;
//获取下载队列的任务
Object[]ftpQueueArray=ftpQueue.toArray;
//遍历下载队列
forinti=0;iftpQueueArray.length;i++
Object[]queueValue=Object[]ftpQueueArray[i];
ifqueueValue==null
continue;
FtpFileftpFile=FtpFilequeueValue[0];
//把下载队列的任务添加到表格组件的数据模型中
model.addRownewObject[]ftpFile.getAbsolutePath,下载,
ftpClient.getServer,i==0?正在下载:等待下载;
queueTable.setModelmodel;//设置表格使用本方法的表格数据模型
3、软件系统化托盘
当点击最小化软件后,系统就会变成一个生成系统推盘,点击系统托盘右键会有“显示主窗体”和“退出”两个菜单,如下图
以下是初始化系统托盘的代码,如下
/**
*初始化系统托盘的方法
*/
privatevoidinitSystemTray
ifSystemTray.isSupported
systemTray=SystemTray.getSystemTray;
TrayIcontrayIcon=newTrayIconicon.getImage;
PopupMenupopupMenu=newPopupMenu托盘菜单;
//创造显示主窗体菜单项
MenuItemshowMenuItem=newMenuItem显示主窗体;
showMenuItem.addActionListenernewActionListener
@Override
publicvoidactionPerformedActionEvente
FTPClientFrame.this.setExtendedStateJFrame.NORMAL;
FTPClientFrame.this.setVisibletrue;
;
//创造退出菜单项
MenuItemexitMenuItem=newMenuItem退出;
exitMenuItem.addActionListenernewActionListener
@Override
publicvoi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 恒温、加热、干燥设备建设项目可行性分析报告(总投资16000万元)
- 深度解析(2026)GBT 18983-2017淬火-回火弹簧钢丝
- 全自动印刷机项目可行性分析报告范文
- 深度解析(2026)《GBT 18903-2002信息技术 服务质量框架》(2026年)深度解析
- 茶叶烘(炒)干机项目可行性研究报告(立项备案申请)
- 防雷检测工程师面试题及答案
- 储能电池项目可行性分析报告范文(总投资13000万元)
- 深度解析(2026)GBT 18443.8-2010真空绝热深冷设备性能试验方法 第8部分:容积测量
- 数据库管理职位专业考题解答解析
- 静电环境管理员面试问题及答案
- 太平鸟服装库存管理系统的设计与实现的任务书
- 辅导员基础知识试题及答案
- 75个高中数学高考知识点总结
- 《公共部门人力资源管理》机考真题题库及答案
- 《数字影像设计与制作》统考复习考试题库(汇总版)
- 国际学术交流英语知到章节答案智慧树2023年哈尔滨工业大学
- DB14-T 2644-2023旅游气候舒适度等级划分与评价方法
- EVA福音战士-国际动漫课件
- GB/T 37563-2019压力型水电解制氢系统安全要求
- GB/T 25085.3-2020道路车辆汽车电缆第3部分:交流30 V或直流60 V单芯铜导体电缆的尺寸和要求
- GB/T 1182-2018产品几何技术规范(GPS)几何公差形状、方向、位置和跳动公差标注
评论
0/150
提交评论