FTP文件传输系统

Gentleman

发布日期: 2019-01-23 08:59:26 浏览量: 1279
评分:
star star star star star star star star star_border star_border
*转载请注明来自write-bug.com

摘 要

起初, FTP并不是应用于IP网络上的协议,而是ARPANET网络中计算机间的文件传输协议, ARPANET是美国国防部组建的老网络,于1960-1980年使用。在那时,FTP的主要功能是在主机间高速可靠地传输文件。目前FTP仍然保持其可靠性,即使在今天,它还允许文件远程存取。这使得用户可以在某个系统上工作,而将文件存贮在别的系统。例如,如果某用户运行Web服务器,需要从远程主机上取得HTML文件和CGI程序在本机上工作,他需要从远程存储站点获取文件(远程站点也需安装Web服务器)。当用户完成工作后,可使用FTP将文件传回到Web服务器。采用这种方法,用户无需使用Telnet登录到远程主机进行工作,这样就使Web服务器的更新工作变得如此的轻松。

和Internet上的许多环境一样,完整的Java应用环境实际上也是一个客户机/服务器环境,更确切地说是浏览器/服务器模型(即Browser/Server模型,简称Web模型)。但与传统的客户机/服务器(C/S)的二层结构不同,应用Java的Web模型是由三层结构组成的。传统的C/S结构通过消息传递机制,由客户端发出请求给服务器,服务器进行相应处理后经传递机制送回客户端。而在Web模型中,服务器一端被分解成两部分:一部分是应用服务器(Web服务器),另一部分是数据库服务器.

关键词:FTP;C/S;B/S;JAVA

1 需求分析

传输系统的主要功能是实现在网络环境下,客户端与服务端的文件传输。主要有客户端与服务端两大模块。

整个系统基于Web环境,应用于FTP服务器,故考虑后台数据库采用JAVA编写,充分发挥其在Internet信息处理方面上的优势,实现方便快捷、高效实用,安全稳定的开发效果。

系统开发的总体任务是连接FTP服务器,上传/下载文件、对FTP服务器站点的管理、服务器端提供FTP服务、允许远程登录下载服务器上的文件。功能层次图如图所示。

FTP数据流图,如图所示

2 系统详细设计

2.1 系统的主要功能

在日常的网络应用中,文件传输已经成为继即时通讯之后第二大的网络基础应用,而点对点的文件发送是最方便的文件传输手段。越来越多的网民或是商业用户都采 用这种方式发送文件,目前许多即时通讯软件,例如QQ、MSN都有点对点文件传输功能,同时还出现了专门的点对点文件传输工具,如快递通等。

当今比较流行的局域网内文件传输软件,如:飞鸽传书等。我们本次制作的软件就是以飞鸽传书为参照,具体功能也是飞鸽传书的基础上,通过分析与对比,总结其他此类软件的优缺点,制作出一款有自己特色的内网传输软件。主要特点要突出在,方便快速,实用性强,功能适应于广大用户,实现文件资源在局域网快速传递分享,充分利用内网宝贵的资源。

当打开软件,首先要让通知在线用户(使用了本软件的的用户),让对方知道自己的在线状态,同时也获取其他用户的在线情况,及时了解本软件的在线用户状态。用户可以根据自己的需要,向在线用户名单列表,添加与删除当前在线用户的名单,并可以手动刷新用户名单。当然本软件也会自动刷新用户名单列表,而且可以根据自己的需要,设定软件自动刷新的时间间隔,做到准确掌握在线名单。

知道了用户的在线情况,如果想对某个在线用户进行对话或发送文件,则可以双击在线用户名单列表中的某个用户,系统将会自动弹出一个对话框,并在对话框显示对方的连接情况。然后就可以进行发送文字信息或回复对方,同时在信息显示栏中会显示双方之间所进行多的全部对话历史记录。在此对话期间,还可以同时发送文件给对方。对话框界面简单实用,方便操作,一目了然。

然而,有的人不太喜欢太多别人发信息给自己,或十分的讨厌太多的“骚扰”信息,这个时候,只要你选择主窗口的基本设置处,就会用相应的设置,在“自动弹开对话窗口”字样的前面,把复选框前面的勾取消,就可以取消一切外来用户发送来的信息,也就不会再有信息“骚扰”了。

然后回到主窗口介绍下。首先可以看到,基本设置框,直接显示在最前端,这样方便用户进行必要的添加设置或重新设置。

用户可以根据自己的电脑配置,或自己的意图进行必要的端口设定。此端口是用来接收文件的主要端口,通过设定此端口,有效的提高发送速度与质量,同时还可以在一定程度上保证信息在传输过程中的安全性。当然在局域网内,为了更多的资源共享,为了更多的方便,也为了时间效益,我们一般选择默认的端口就可以了;否则发送与接收文件的双方都必须先要进行“对话与协议”,才能有效的建立文件传送与接收。

至于时间间隔项,我们在上面已经有介绍过,其主要用途就是刷新在线用户名单,保证了对话与发送文件的实效性。

很多人在发送或接收文件的时候,总不希望自己的电脑出现当机(也就是所谓的死机)状态。不难想象,要是很多用户同时连接到你的电脑,此时电脑是很难发挥起“速度效益”的作用,有的时候反而导致一系列的什么“崩溃”、“当机”、“停滞”现象。所以在设置“最大连接”还是有一定的必要性的。此选项可以根据自己的需要、自己的电脑配置进行更改。一般情况下设置为默认也就行了。

接下来的,“自动弹开对话窗口”,在上面也有轻轻的描述过,在此就不多论述了。

现在介绍下系统的主要部分,也是核心部分。既然说是“局域网内文件传输软件”,那么传输部分当然是不可缺少的部分。

其实此功能实现起来并不难,只要用户选择了一个文件接收对象,即文件接收方,就可以选择文件与对方进行连接与发送文件了。当有新文件发送,对方(接收方)会自动弹出一个接受文件的对话窗体,对方可以接受或拒绝。对方拒绝接收文件,那么双方也就中断了文件的接收与发送,并且接收方会通知发送方中断的消息。相反,要是接收方同意了接收文件,文件的传输工作就会启动,进行一系列的数据包发送与接收。此时,双方都可以很清楚的知道对方的发送与接收状态,比如:发送方可以知道文件接收方是否中止或退出接收,发送是否异常,是否需要重新发送数据包;接收方同样可以知道对方的状态,以及文件接收率,速度等情况。还有很多功能都可以在界面上直接看到,在这里就没有必要一一提出。

因为系统可以同时发送多个文件,并且可以同时与多人聊天、对话。打开的窗口可能很多很多,十个、百个、千个? 此时,要是想关闭这些子窗口,只需要轻轻点下“关闭子窗”,一切就OK了,这样就省去了很多时间,真正体现“方便,快捷”。

为了“抗骚扰”,系统还特意的设置了黑名单功能,此功能里可以轻易的设定需要“排斥”的对象。在这部分重要用到FSO模块技术,可以动态生成一个黑名单文件,操作直观而简单。

系统的功能体现了方便与实用的特点,并不是一意追求太强大的功能与复杂的界面,而是通用的基础上做到实效。例如其中的“多聊、群发”功能都有力的体现了这点。

2.2 模块设计

主窗口如图所示:

文件发送窗口如图所示:

文件接收窗口如图所示:

参考文献

[1] 廖雷等,Java程序设计教程,中国电力出版社

[2] Warton,Java多线程编程初步,电脑报

[3] 张立等,基于Client/Server模式的数据库应用软件的设计与实现,计算机应用研究

[4]李书杰,李志刚.B/S三层体系结构模式[J].河北理工学院学报

上传的附件 cloud_download FTP文件传输系统.zip ( 284.39kb, 21次下载 )
error_outline 下载需要11点积分

发送私信

一个人幸运的前提,其实是ta有能力改变自己

9
文章数
24
评论数
最近文章
eject