站点辅助功能模块FTP站点管理实现方法

ftp站点  时间:2021-02-19  阅读:()

本文介绍了Java语言实现简单F TP软辅助功能模块F TP站点管理的实现方法具有一定的参考价值感兴趣的小伙伴们可以参考一下。想了解更多相关信息请持续关注我们应届毕业生考试网!

1、 F TP站点管理

点击“F TP站点管理”按钮弹出对话框“F TP站点管理”如下图

1)连接站点

在F TP站点管理面板上选好要连接的站点 点击“连接”按钮则会将主机地址、端口号、用户名好并将密码清空如下图

到其主要代码如下if (command.equals("link")) { //如果单击的是连接按钮frame.setLinkInfo(bean); //调用setLinkInfo()方法

1

dispose(); //关闭FTP站点管理对话框

}

其中调用的是c o m.oyp.ftp.F TP C lie ntF ra me 的setLinkInfo(SiteInfoBean bean)方法其代码如下

/**

*设置F TP连接信息的方法 由F TP站点管理器调用

*/ublic void setLinkInfo(SiteInfoBean bean) {serve rTextField.setText(bean.getServe r()); //设置主机地址portTextField.setText(bean.getPort() +""); //设置端口号userTe xtField.setText(bean.getUse rName()); //设置用户名

P assF ield.set Text(""); //密码清空

PassField.re questFocus(); //密码框请求焦点

2)添加站点

在F TP站点管理面板上点击“添加”按钮会产生一个新的对话框“添加F TP站点”如下图

填写好站点名称、地址、端口号、登陆用户后点击”

2

确 定 ” 或 者 ” 重 置 ” 按 钮 会 触 发com.oyp.ftp.panel.manager.SiteDialog 类 的actionPerfo rmed(Actio nEvent e)方法其代码如下

/**

*界面按钮的事件处理方法

*/

@Overridepublic void actionPerformed(ActionEvent e) {

String command=e.getActionCommand(); //获取按钮的command属性if (comma nd.e qua ls("ok")) { //如果是确定按钮t ry{if(dialo g==nu ll) {dispose();return;

}

//获取界面所有文本框的内容

String siteName=siteNameField.getText().trim();

String server=siteAddressField.getText().trim();

String use rName=loginUse rField.getText().trim();

String po rtStr=po rtField.getText().trim();

3

//判断是否填写了全部文本框if(siteName.isEmpty() | | se rve r.isEmpty()

| |userName.isE mpty() | |po rtStr.isEmpty()) {

JOptionP ane.s howMe ssageDia lo g(this,"请填写全部信息");return;

}int port=Integer.valueOf(portStr);

//创建F TP站点信息的JavaB ean对象

SiteInfoBean bean = new SiteInfoBean(siteName,server,port,userName);

//如果对话框的siteBean不为空if(siteBean!=null)bean.setId(siteBean.getId()); //设置FTP站点的ID编号dialog.addSite(bean); //调用父窗体的addSite方法添加站点dia log.loa dSiteList(); //调用父窗体的loadSiteList方法重载站点列表dispose();

}catch(NullPointerException ex) {

4

ex.printStackTrace();return;

}catch(NumberFormatException ex) {

JOptionP ane.s howMe ssageDia lo g(this,"请正确填写端口号信息");ex.printStackTrace();return;

}

}if (command.equals("cancel")) { //如果是重置按钮if(siteBean==null) //如果对话框的siteBean属性为空clearInput(); //调用清除文本框内容的方法e ls e

//否则initInp ut(); //初始化界面文本框内容

}

}

3)编辑站点

在F TP站点管理面板上选好要编辑的站点 点击“编辑”按钮会产生一个新的对话框“编辑F TP站点”如下图

5

编辑写好站点名称、地址、端口号、登陆用户后点击”确 定 ” 或 者 ” 重 置 ” 按 钮 触 发com.oyp.ftp.panel.manager.SiteDialog 类 的actionPerfo rmed(Actio nEvent e)方法其代码如添加站点里一样。

4)删除站点

在F TP站点管理面板上选好要删除的站点 点击“删除”按钮,调用delSite(SiteInfoBean bean)方法其代码如下

/**

*删除F TP站点的方法

*/public void delSite(SiteInfoBean bean) {

//从站点属性集合对象中移除指定ID编号的站点属性site Info.remove(bean.getId());t ry{

//获取站点属性文件的输出流

FileOutputStream out = newF ile O utputStre am(F IL E);site Info.sto re(out,"F TP站点数据"); //调用store方法存储站点属性

6

loadSiteList(); //重新装载站点列表

}catch(FileNotFoundException e) {e.printStackTrace();

}catch(IOException e) {e.printStackTrace();

}

}

2、上传/下载任务结束后自动关机

在 com.oyp.ftp.panel.queue.QueuePanel 类的refreshQueue()方法里会判断任务队列是否为空以及自动关机按钮是否被按下如果满足条件则执行系统关机命令延迟30秒后自动关机。其代码如下

/**

*刷新队列的方法

*/private synchronized void refreshQueue() {

//如果自动关机按钮被按下并且上传和下载的队列都有任务if (fra me.getShutdownB utton().isSelected()&& lo c alQ ue ue.is E mpty()

&&ftpQueue.isE mpty()) {t ry{

7

//执行系统关机命令延迟30秒钟

Runtime.getRuntime().exec("s hutdown -s -t30");

}catch(IOException e) {e.printStackTrace();

}

}

//创建表格的数据模型对象

DefaultTableModel model = newDefaultTable Mode l(columns,0);

//获取本地上传队列中的任务

Object[] localQueueArray=localQue ue.toArray();

//遍历本地上传任务for(int i=0; i localQueueArray.length; i++) {

Object[]que ueValue=(Object[]) localQueueArray[i];if(que ueVa lue==null)c o ntinue;

File localFile=(File)queueValue[0];

//把上传队列的任务添加到表格组件的数据模型中model.addRow(new Object[]{ lo c alF ile.getAbso luteF ile(), &quo t; 上 传",ftpClient.getServer(), i == 0 ?"正在上传:

8

"等待上传});

}

//获取下载队列的任务

Object[] ftpQueueArray=ftpQueue.toArray();

//遍历下载队列for(int i=0; i ftpQueueArray.length; i++) {

Object[]queueValue=(Object[])ftpQueueArray[i];if(que ueVa lue==null)c o ntinue;

FtpFile ftpFile=(FtpFile)queueValue[0];

//把下载队列的任务添加到表格组件的数据模型中model.addRow(new Object[]{ftpFile.getAbso luteP ath(),"下载",ftpClient.getServer(), i == 0 ?"正在下载:"等待下载});

}que ueTa ble.setMode l(mo del); //设置表格使用本方法的表格数据模型

}

3、软件系统化托盘

当点击最小化软件后系统就会变成一个生成系统推盘 点击系统托盘右键会有“显示主窗体”和“退出”两个菜

9

湖北50G防御物理服务器( 199元/月 ),国内便宜的高防服务器

4324云是成立于2012年的老牌商家,主要经营国内服务器资源,是目前国内实力很强的商家,从价格上就可以看出来商家实力,这次商家给大家带来了全网最便宜的物理服务器。只能说用叹为观止形容。官网地址 点击进入由于是活动套餐 本款产品需要联系QQ客服 购买 QQ 800083597 QQ 2772347271CPU内存硬盘带宽IP防御价格e5 2630 12核16GBSSD 500GB​30M​1个IP...

tmhhost(100元/季)自带windows系统,香港(三网)cn2 gia、日本cn2、韩国cn2、美国(三网)cn2 gia、美国cn2gia200G高防

tmhhost可谓是相当熟悉国内网络情况(资质方面:ISP\ICP\工商齐备),专业售卖海外高端优质线路的云服务器和独立服务器,包括了:香港的三网cn2 gia、日本 cn2、日本软银云服务器、韩国CN2、美国三网cn2 gia 云服务器、美国 cn2 gia +200G高防的。另外还有国内云服务器:镇江BGP 大连BGP数据盘和系统盘分开,自带windows系统,支持支付宝付款和微信,简直就是专...

阿里云秋季促销活动 轻量云服务器2G5M配置新购年60元

已经有一段时间没有分享阿里云服务商的促销活动,主要原因在于他们以前的促销都仅限新用户,而且我们大部分人都已经有过账户基本上促销活动和我们无缘。即便老用户可选新产品购买,也是比较配置较高的,所以就懒得分享。这不看到有阿里云金秋活动,有不错的促销活动可以允许产品新购。即便我们是老用户,但是比如你没有购买过他们轻量服务器,也是可以享受优惠活动的。这次轻量服务器在金秋活动中力度折扣比较大,2G5M配置年付...

ftp站点为你推荐
手游运营手册游戏发展国主机开发怎么做 怎么开发主机渗透测试web渗透测试有前途吗今日热点怎么删除今日热点自动弹出怎么卸载或屏蔽今日热点怎么删除今日热点怎么卸载删除 今日热点新闻彻底卸载删蘑菇街美丽说蘑菇街美丽说唯品会天猫京东。女生买衣服,哪个好xp系统停止服务xp系统停止服务怎么办lockdowndios8.1能用gpp3to2吗?型号A1429mate8价格华为mate8什么时候会降价商标注册查询官网怎么查商标有没有注册虚拟专用网intranet,extranet,虚拟专用网与internet有什么区别与联系
国外虚拟空间 私服服务器租用 视频空间租用 美国和欧洲vps 如何注销域名备案 asp.net主机 inmotionhosting 北京双线机房 hkg linux服务器维护 太原网通测速平台 电信主机 卡巴斯基免费试用版 如何建立邮箱 网通服务器 德讯 美国迈阿密 数据湾 google搜索打不开 ncp是什么 更多