客户端FTP客户端的设计与实现_计算机网络课程设计报告

ftp客户端  时间:2021-03-16  阅读:()

FTP客户端的设计与实现

课程名称 计算机网络设计题目 FTP客户端的设计与实现系 别 计算机与信息工程学院专 业 计算机科学与技术

计算机科学与技术系二○一一年制

FTP客户端的设计与实现

课程设计任务书

FTP客户端的设计与实现

目 录

第一章序言··················································································································3

1.1课题来源······················································································································································3

1.2开发工具·····················································································································································3

第二章系统需求分析·······························································································5

2. 1功能需求·····················································································································································5

2.2系统模型设计··········································································································································5

2.3系统工作流程设计································································································································5

第三章系统设计·········································································································7

3. 1实现功能·····················································································································································7

3.2函数说明·····················································································································································7

3.2. 1界面设计代码· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·7

3.2.2功能实现函数· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·11

第四章系统实现········································································································13

4. 1界面设计的实现····································································································································13

4. 1. 1连接服务器· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·14

4. 1.2获取文件列表· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·14

4. 1.3断开服务器· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·15

4. 1.4上传文件· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·16

4. 1.5下载· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·17

4.1.6重命名· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·19

4.1.7删除· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·20

4.1.8刷新· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·22

4.1.9返回上一目录· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·22

4.1.10查看日志信息· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · ·23

第五章总结·················································································································24

第六章参考文献········································································································24

FTP客户端的设计与实现

第一章序言

——耿桂花

1. 1课题来源

FTP File Transfer Protocol, FTP是TCP/IP网络上两台计算机传送文件的协议 FTP是在TCP/IP网络和INTERNET上最早使用的协议之一它属于网络协议组的应用层。 FTP客户机可以给服务器发出命令来下载文件上载文件创建或改变服务器上的目录。 FTP是一个8位的客户端-服务器协议能操作任何类型的文件而不需要进一步处理就像MIME或Unencode一样。但是 FTP有着极高的延时这意味着从开始请求到第一次接收需求数据之间的时间会非常长并且不时的必需执行一些冗长的登陆进程。 FTP服务一般运行在20和21两个端口。端口20用于在客户端和服务器之间传输数据流而端口21用于传输控制流并且是命令通向ftp服务器的进口。当数据通过数据流传输时控制流处于空闲状态。而当控制流空闲很长时间后客户端的防火墙会将其会话置为超时这样当大量数据通过防火墙时会产生一些问题。此时虽然文件可以成功的传输但因为控制会话会被防火墙断开传输会产生一些错误。 FTP客户端主要目标是促进文件的共享计算机程序或数据 鼓励间接或者隐式的使用远程计算机向用户屏蔽不同主机中各种文件存储系统的细节可靠和高效的传输数据。

因此开发FTP客户端成为一个很有必要的事情。

1.2开发工具

随着程序设计技术的改革和计算机环境的改变J ava语言也得到了迅速发展。

一方面 C++等面向对象程序设计语言的发展为Java提供了基础。事实上 Java

也大量继承了C以及C++的成果并增加了体现程序设计发展状态的功能。另一

方面 网络及Inte rnet的发展对程序设计提出了新的要求 为Java的发展注入了

强大的动力。正是Inte r ne t的快速发展和普及改变了传统的计算模式促进了

J ava的普及与流行。

它最初被命名为O ak 目标设定在家用电器等小型系统的编程语言来解决

诸如电视机、 电话、 闹钟、烤面包机等家用电器的控制和通讯问题。 由于这些智

能化家电的市场需求没有预期的高 S un放弃了该项计划。就在O ak几近失败之

时随着互联网的发展 S un看到了O ak在计算机网络上的广阔应用前景于是

改造了O ak 以“Ja va”的名称正式发布。

Java编程语言的风格十分接近C、C++语言。 Java是一个纯的面向对象的程

序设计语言它继承了C++语言面向对象技术的核心 Java舍弃了C++语言中

容易引起错误的指针以引用取代、运算符重载ope rato r o verload ing、多重继

承以接口取代等特性增加了垃圾回收器功能用于回收不再被引用的对象所

FTP客户端的设计与实现

占据的内存空间使得程序员不用再为内存管理而担忧。在Java SE 1.5版本中Java又引入了泛型编程Generic Pro gramming、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。 Java不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode)然后依赖各种不同平台上的虚拟机来解释执行字节码从而实现了“一次编译、到处执行”的跨平台特性。不过每次的编译执行需要消耗一定的时间这同时也在一定程度上降低了 Java程序的运行效率。但在J2SE 1.4.2发布后Java的执行速度有了大幅提升。 与传统程序不同 S un公司在推出 Java之际就将其作为一种开放的技术。全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。 “Java语言靠群体的力量而非公司的力量”是S un公司的口号之一并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。

Java编程语言的主要特性是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。

FTP客户端的设计与实现

第二章系统需求分析

——方莹莹

2. 1功能需求

1.实现一个图形用户界面的FTP客户端保证文件的安全传输和存储。

2.通过输入服务器地址、用户名和密码、可以实现远程FTP主机的登录。

3.提供本地文件的上传功能可对FTP主机文件进行下载、上传、删除、重

命名等文件操作。

4.可以查看一系列的操作的日志信息。

2.2系统模型设计

2.3系统工作流程设计

FTP客户端的设计与实现

FTP设计总流程图

FTP客户端的设计与实现

第三章系统设计

——高进

3.1实现功能

用户登陆、用户退出、文件上传、文件下载、文件重命名

文件删除、上翻文件目录、下翻文件目录

界面实现部分

设计为一个用户界面上面包括各种用户按钮、文本输入栏、状态栏等等。具体如下服务器地址信息输入栏、端口信息输入栏、用户名、密码输入栏、用户登陆连接按钮、用户退出断开连接按钮、服务器文件显示列表框、下载文件按钮、上传文件按钮、重命名文件按钮、删除文件按钮、上一级目录按钮下一级目录按钮状态栏。

3.2函数说明

3.2.1界面设计代码

每个按钮对象注册监听器对应相关的业务逻辑调用FtpBean类中的对应方法。下面是页面部分实现的主要代码以及相关说明package ftp;importjava.awt.event.*;import java.awt.*;import j ava.util.*;import java.util.List;import java.util.StringTokenizer;import java.io.*;import javax.swing.*;import javax.swing.event.*;public class FTP extends JFrame

{

FtpBean ftp=new FtpBean(); //FTP客户端对象pr ivate F ileW r iter wr ite;private P rintWriter o ut;private Date time;private JTextField url=new JTextField(); //FTP服务器地址private JTextF ield port=new JTextF ield(); //F TP服务器端口private JTextField username=new JTextField(); //用户名

FTP客户端的设计与实现

private JTextF ield password=new JTextF ield(); //密码private JTextF ie ld status=new JTextF ield();//当前状态private JButto n co nne ctButto n=new JButto n("连接");//连接按钮private JButton c loseButton=new JButto n("断开连接");//断开连接按钮private JPopupMenu popup=new JPopupMenu(); ;private JMenuItem re fresh=new JMenuItem("刷新"); //右键弹出菜单private JMenuItem de lete =new JMenuItem("删除");private JMenuIte m do wnload =new JMenuIte m("下载");private JMenuIte m up load =ne w JMe nuIte m("上传");private JMenuItem rename= new JMenuItem("重命名");private JMenuItem up Dir=new JMenuItem("上级目录");private JMe nuIte m s howLo g=ne w JMe nuIte m("显示日志信息");final DefaultListModel m=new DefaultListModel(); //显示文件列表JList fileList=new JList(m);

JScro llPane fileScro llPane;private D ime ns io n faceS ize=ne w D ime ns io n(400,600); //框架大小pub lic F TP()

{in it();createPop up(); //弹出菜单time=new Date();try

{write=ne w F ileWriter("lo g.txt",true);out=new PrintWriter(write,true);

}catch(IO Exception ioe)

{io e.printStackTrace();

}status.s etEd itab le(fa ls e);this.add(status,Borde rLayo ut.S OUTH); //下方connec tButto n.addAc tio nLis te ner(new Ac tio nListe ne r()

{public void actionPerformed(ActionEvent e)

{connec t();

恒创新客(317元)香港云服务器 2M带宽 三网CN2线路直连

恒创科技也有暑期的活动,其中香港服务器也有一定折扣,当然是针对新用户的,如果我们还没有注册过或者可以有办法注册到新用户的,可以买他们家的香港服务器活动价格,2M带宽香港云服务器317元。对于一般用途还是够用的。 活动链接:恒创暑期活动爆款活动均是针对新用户的。1、云服务器仅限首次购买恒创科技产品的新用户。1 核 1G 实例规格,单个账户限购 1台;其他活动机型,单个账户限购 3 台(必须在一个订单...

新加坡云服务器 1核2Gg 46元/月 香港云服务器 1核2G 74元/月 LightNode

LightNode是一家成立于2002年,总部位于香港的VPS服务商。提供基于KVM虚拟化技术.支持CentOS、Ubuntu或者Windows等操作系统。公司名:厦门靠谱云股份有限公司官方网站:https://www.lightnode.com拥有高质量香港CN2 GIA与东南亚节点(河内、曼谷、迪拜等)。最低月付7.71美金,按时付费,可随时取消。灵活满足开发建站、游戏应用、外贸电商等需求。首...

CloudCone中国春节优惠活动限定指定注册时间年付VPS主机$13.5

CloudCone 商家产品还是比较有特点的,支持随时的删除机器按时间计费模式,类似什么熟悉的Vultr、Linode、DO等服务商,但是也有不足之处就在于机房太少。商家的活动也是经常有的,比如这次中国春节期间商家也是有提供活动,比如有限定指定时间段之前注册的用户可以享受年付优惠VPS主机,比如年付13.5美元。1、CloudCone新年礼物限定款仅限2019年注册优惠购买,活动开始时间:1月31...

ftp客户端为你推荐
vc组合天然维生素c和合成维生素c有区别吗云爆发云联惠是什么来的sherylsandbergLean In是一个怎样的组织留学生认证留学生前阶段双认证认证什么内容?广东GDP破10万亿__年,我国国内生产总值(GDP)首破10万亿元.目前,我国经济总量排名世界第___位?18comic.fun有什么好玩的网站刘祚天你们知道21世纪的DJ分为几种类型吗?(答对者重赏)www.kkk.com谁有免费的电影网站,越多越好?www.bbb336.comwww.zzfyx.com大家感觉这个网站咋样,给俺看看呀。多提意见哦。哈哈。www.haole012.com012.qq.com是真的吗
重庆vps租用 汉邦高科域名申请 快速域名备案 什么是域名地址 过期域名抢注 云网数据 樊云 2014年感恩节 wdcp 主机屋免费空间 服务器日志分析 日本bb瘦 jsp空间 cdn联盟 息壤代理 qq金券 免费php空间 租主机 kosskeb79 suspended翻译 更多