局域网文件共享管理系统分析

时间:2017-02-13 07:32:49 来源:论文投稿

一、需求分析

(一)功能性分析

功能性分析具体表现在两方面。一是多线程:客户端和服务端各用一线程发送信息,服务端另有一监听线程,用于删除超时的信息。这里应用同步,使两个线程可以操作同一个map。服务器主线程等待的端口监听来自客户端的连接请求通知队列接受连接的事件,如果等待失败就打印等待失败的信息,然后开始下一次等待,等待超时则打印等待超时信息并进入下一次等待[1](P28);等待到连接建立事件通知,则负责把此套接字的句柄传给空闲线程中新申请的套接字对象节点,并给此套接字建立与它相关的事件对象,这样此套接字的相关事件就交给相关子线程维护,主线程则返回并进入下一次等待。二是GUI界面设计:简单友好,方便用户认知,消除异议;满足不同目标用户的创意需求;用户界面友好性;图标识别平衡性;图标功能一致性;建立界面与用户的互动交流。

(二)系统实现的主要功能

(1)自动列出局域网内所有运行计算机:程序启动之后能看到当前哪些机器在线,可以与哪些机器交互信息,以及时更新用户列表。(2)设置文件共享目录:可以选择新建或者编辑共享文件目录,如果它不是一个新建的共享文件目录,就不能编辑该目录。(3)帮助菜单:对系统的操作进行必要说明。(4)界面上方需要一个地址栏,显示操作目录,左边的操作界面是一个目录树,清晰地显示了目录结构,右边则是某个目录下的文件资源。(5)菜单来上有刷新、复制、剪切、粘贴、删除、查找、设置共享目录等按钮,可以对文件目录进行一系列的基本操作。(6)可以随时安全退出。

二、程序设计

(一)本程序需要解决的主要技术问题

在局域网内运行此系统时,自动列出局域网内的所有机器,在给定权限下,双击任意一台机器,像对本地机器操作一样,完成对文件的添加、删除等操作。(1)设计接收端的线程等待服务器,以便合理调度客户端请求。(2)建立界面与用户的友好互动,实现界面可视化。(3)实现信息收发。(4)实现文件传输和文件夹传输。(5)为程序添加系统托盘图标。(6)保存用户设置信息。

(二)程序设计结构

本程序按照功能可分为两个层面:界面层和网络通信层。其中,界面层主要采用JavaSwing编程技术编写用户界面[2](P156),网络通信层采用JavaSocket技术编写数据交互程序。为方便管理代码和其他资源文件,按功能将本程序的所有代码文件分为以下几个功能包,其实现的功能分别为:(1)com.goohua.UI包:构建本程序的主窗体和系统托盘图标。(2)com.goohua.UI.filewiewer包:包含主面板设计中需要用到的区域面板。(3)com.goohua包中的MainPro类:实现多线程的调用。

(三)功能模块设计

局域网中,除IP地址不同外,每台计算机是对等的,其他功能也都具有普遍性[3](P91)。在此为了便于说明系统的功能模块,仅用一台计算机进行说明。根据需求分析,系统主要功能模块如图1所示。这样的划分十分清晰,并且功能之间耦合性弱,便于顺利进行工作。

(四)界面模块设计

用户使用软件时首先接触的是GUI界面,所以GUI界面直接影响使用者对软件的第一印象。一个界面可以华丽,可以功能复杂多样,但一定要易上手,才能让使用者切实体会到软件带来的便利。同时,界面的简洁性,要确保用户能直观看出软件的主要功能,懂得操作程序。本程序主要强调显示在线的局域网用户,不需要用户动手选择选项,直接罗列出在线局域网计算机,罗列出计算机的机名项、相对应的IP地址。因此,即便不太熟悉计算机,用户也能找到所需主机。在程序的第二界面中,只要用鼠标选中所需文件所属的盘符,就可以获取相应硬盘下的文件信息。对windows用户来说,就像操纵自己计算机上的文件一样简单明了,对选中文件的操作,在界面最上层添加形象操作按钮,可以对文件进行相应的复制、剪切、删除操作,直观且便捷地完成对目标文件的操作[4](P212)。

(五)多线程模块设计

多线程机制可以起到优化速度的效果,java的多线程亦是如此。如今的cpu计算能力飞速发展,硬件限制基本不存在,因此一台普通的台式机可以当作一个小型的服务器来运作。本系统在相应位置引用多线程机制,用于同时处理所需任务,包括主线程调用相关对象获取局域网主机信息;广播自己的IP,并告诉它们开始的信息;做一个服务套接字,接收到第一台机器发送过来的computelist;如果自己是第一个IP,那么自己发送计算机列表给新上来的机器。线程之间实现并执行流程功能如图3所示。

三、系统部署与软件测试

程序编译成功后,可通过在命令行写入命令来运行。但考虑这样使用不方便,所以java程序编译完后通常将.class文件打包成.jar文件。jar文件具备java跨平台性,是java的执行文件[5](P142)。.jar格式文件打包的方式有多种,这里只介绍本程序利用的Eclipse打包方法,有以下6个步骤:(1)点击菜单栏文件,导出菜单项。(2)“导出”对话框弹出后,从中选择JAR文件,然后点击“下一步”。(3)选择好JAR文件输出路径以及需要打包的文件,然后点击“下一步”。(4)在JAR导出对话框中选择程序的Main类,点击完成,即可生成jar文件。将.jar文件的打开方式设置为jrebin目录下的javaw.exe,然后双击jar文件,即可执行程序。(5)运行程序能获取局域网内在线主机,有主机退出时及时除去局域网内的显示。(6)第二界面对文件进行操作时,判断标记是否为1,判断PreDelNode是不是空,而不是根据上面说的复制来执行;删除节点也同样用这个思路。根据一些列的设计结构规划、流程规划、模块规划,系统能够实现需求分析所要求的内容,相关功能得以一步步完善,逐步实现预期计划功能。比如,显示在线的主机信息,获取相关主机硬盘下的文件信息以及对相关文件的操作等。总之,局域网文件共享管理系统出发点是使用自己定义的交互方法,实现整个管理功能,保证网络资源的私密性、可靠性和安全性。这个系统解决了局域网内共享资源的问题,通过安全可靠的广播技术,获得局域网内其他用户;通过通信协议原理对相关文件进行操作,方便企业内文件传递,提高了办公效率。

作者:苟元琴 单位:三门峡职业技术学院


更多电子论文论文详细信息: 局域网文件共享管理系统分析 论文代写
http://m.400qikan.com/lw-152389 论文代发

相关专题:大气科学学报 最适合女性的职业

相关论文
相关学术期刊
《中南财经政法大学学报》 《时代青年》 《探索与争鸣》 《科学技术与工程》 《护士进修杂志》 《云南电力技术》 《山西交通科技》 《画刊》 《市场经济与价格》 《涟钢科技与管理》

< 返回首页