关键词不能为空

当前您在: 主页 > 英语 >

7.CDN缓存系统开发详细设计说明书剖析

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-09 10:15
tags:

-

2021年2月9日发(作者:1073)




文档



详细设计说明书



详细设计说明书



1.


引言



1.1


编写目的




本详细设计说明书是针对网络信息体系结构而编写。< /p>


目的是对该项目进行详细设计,



概要设 计的基础上进一步明确系统结构,


详细地介绍系统的各个模块,


为进行后面的实现和


测试作准备。本详细设计说明书的预期读者对系统进行扩展和维护的 人员。




2.



系统的结构



ui

preview


client


search


common



?



ui



系统界面部分,


负责接受用户输入,


显示系统输出,


负责其他模块功能的协调调 用,


并含有站内搜索功能,即在用户指定的已打开的


ftp


站点中搜索用户需要的资源。


ui


部分调用


common


部分的功能读取


xml< /p>


文件中保存的界面元素属性信息,用户最近访问


过的


10



ftp


信息,用户选 择的下载的


ftp


内容列表及其他需要通过

xml


文件保存的


信息。



?



client

:实现


ftp


客户端的功能,


ft p


连接,


ftp


上传及下载:上传或下 载用户指定的


资源,并返回相应的信息。




1




文档



详细设计说明书



?



search:

< br>资源实时检索部分,根据用户输入的资源名称关键字,资源类型和选择的检索


方式 检索用户需要的资源,


并验证资源的可用性,


返回可用资源及其 大小,


速度等相关


信息。



?



preview

< br>:资源预览部分,显示用户选择的资源的部分内容,以使用户决定是否需要该


资源 。


preview


部分调用


commo n


部分读取属性文件的内容亦显示预览资源内容的显示


格式。< /p>



3



模块


1



ui


)设计说 明



3.1


模块描述




实现用户界面的包,含有


11


个文件


51


个类,是本系统中最复杂的 代码。



3.2


功能




负责接受用户输入,显示系统输出,其他模块功能的协调调用,并含有站内搜索功能,< /p>


即在用户指定的已打开的


ftp


站点中搜 索用户需要的资源。



3.3


交互的模块



client



search< /p>



preview


common




3.4


模块设计



该模块中的主要文件,文件中包含的主要类及其功能和与其它包的交互如下:



?





MainFrame


是含有主函数的类,也是


lyra


客户端开始执行的类,


它先后进行资源的初始化,显示 主界面等工作,根据屏幕大小设置界面大小,设置界面


的观感。



?



FtpFrame_:

< p>
显示关于窗口的类,当用户点击帮助菜单中的关于菜单


项时会弹出关于对话 框。



?



< /p>



FileTools


是文件操作辅助类 ,可以实现文件的递归删除等。



?



:


JDOMTes


是操作

< p>
xml


文件的类,用


JDOM

来操作


xml


文件,


实现的功能有 :





1< /p>


)保存


ftp


服务器的文件列表(站内搜 索时使用)


,递归的从


ftp


服务器读 取列表,


并存入一个


xml


文件中(文 件的命名方法是:


ip+


用户名


.xm l



;


以目录树的形式保存。





2


)根据文件名在文件中查找文件,站内搜索时使用。





3



保存


ftp


服务器的信息:


ip



端口


(默认端口


21


不保存)



用户 名


(默认


anonymous


不保存)


,密码,最多存


10


个;存在


resourcesettings


文件中。





4


)读取 已存储的


ftp


服务器信息。





5


)从< /p>



读取搜索的类型。



?



:


放置系 统运行时使用的一些常量,


initcontent


()


函数对所有常量进行


初始化,这个函数在


Ma inFrame


中被调用一次。


iconHashMap



hash


表,用于存放

文件的系统图标。



?




:包含自定义的控件类,


java


中的控件可能不能满足需求,


需要自己定义某些属性。这些控件会在创建界面 时使用。其中含有的类有:




1



CustomizedJTable


是表格类,设置表格的某些属性,如字体等。




2



Customized TableCellRenderer


是表格单元格绘制器类,主要用于显示文件的系统 图标,


和文件名。




3



LeftPanel


类的 父类是


JTabbedPane


,用户显示主窗口左边的面板。




4



RightPanel


类的父类是


JPan el


,用户显示右边的主题部分,包括右上边的搜索及服务


器选 项,和中间的显示服务器文件的


TabbedPane



.



2




文档



详细设计说明书



< br>5



BottomPanel


类 是右下放显示下载和服务器信息的


JTabbedPane


。< /p>




6



CustomizedJButton


是定义按钮类,更改了按钮的 字体,


java


本身默认的字体不好看。




7



C ustomizedTableModel


是表格类,实现单元格的不可编辑。




8



CustomizedTableCellRenderer_Remote






绘< /p>









< p>




RemoteFi lesPanel


使用,用于显示文件名和文件图标。




9



FontTa bleCellRenderer


类是表格单元格绘制器,主要功能是设置字体。




10



FontListCellRenderer


类是下拉列表框单元格绘制 器,主要用于设置字体。




11



CustomizedJLabel


类是 自定义标签类,重新设置了标签的字体。



< br>12



CustomizedJTextField


类是自定义文本框类,主要用于设置文本框的显示属性。




13



Custom izedJMenu


类是自定义菜单类,重新设置了菜单的字体。




14



CustomizedJMenuItem


类是自定义菜单项类,重新设置了菜单的字体 。




15



CustomizedListCellRenderer


类是


JComboBox


即组合框单元格绘制器,用于在本地


路径选择的下拉列表中显示磁盘图标。



?



,


Se archResultReceiver


是一个接口,主要用于返回搜索结果。


搜索完成后调用接口中的函数通知调用者。其中主要有两个函数:




1



OnSea rchFinished(String[]


keywords,ArrayList[]


results et);result


是一个


10


维的 数组表


result[10]


,


res ult[i]


是由类型为


i


的资源组成 的数组。


i



0



9


,和类型列表框中的顺序一致。




2



OnS earchFinished(String[] keywords,ArrayList resultse t);


不分类型,


将所有资源放在一个


数组表中。



?



:FtpFrame


是程序主窗口类,

类型为


JFrame,


是由三个分割窗口

< br>JSplitPane


构成的。



jSplitPane_Left


是左边的分割窗口,水平分割条上边显示本地文件框 ,下边是预览框;



jSplitPane_Right


是右边的分割窗口,


水平分割条上边是服务器选项和

< br>ftp


服务器文件显示的


窗口,下边是下载和服务器信息 显示窗口;



jSplitPane_Whole





< br>分















jSplitPane_Lef






jSplit Pane_Right




FtpFr ame



LeftPanel



RightPanel



BottomPan el



PreviewWrapperPanel


这几部分安装在相


应的分割窗格中;


LeftPan el



RightPanel



BottomPanel


是在



中定


义的,


PreviewWrapperPanel


是在


Preview


包中定义的。



?



:


LocalFilesPanel


是本地文件面板,用表格来显示本地 文件的信


息。


上边是组合框,


显示了磁 盘分区通过这里可以改变根目录。


表格中显示了文件的信


息,包 括文件名,文件的系统图标,大小,最近修改日期,属性等。选中一个文件后可


以执行上 载和删除操作。文件夹会递归的删除。


GetCurrentPath

< br>()函数返回当前的路


径。


DisplayPathFi les


()函数在列表中显示指定目录下的文件。



?





定义右上边的控件。含有的类有:




1



FtpServerOptionPan el


类是服务器连接选项面板,包含服务器地址,端口,用户名,密

码等,还包括最上端的搜索选项。


openRemoteFilesPanel


()函数在下面的


TabbedPane


中 打


开一个新的服务器面板,连接服务器。



2



RemoteFilesP anel


类的主要功能是连接


Ftp


服 务器并显示文件。


这里会进行文件的上载,


下载及预览等操作。


RemoteFilesPanel


的内部类


TransferController


负责调用


Ft pClient


类提供


的功能与服务器进行交互,完成用户指定 的文件操作。


TransferController


还有三个 内部类:


ConnThread


类是负责连接服务器的线程(新 开一个线程,目的是避免连接时阻塞)



DownloadFi leThread


类是下载文件的线程,


UploadFile Thread


类是上载文件的线程。




3



SearchResultPa nel









果< /p>









< p>



3




文档



详细设计说明书



SearchRes ultPanelWithinSearchEngine
















SearchResultPanelWithinServer


类的功能是 站内搜索。搜索引擎的搜索会调用


search


包中的









< br>索





search





OnSearchFinished







SearchRes ultPanelWithinSearchEngine


类,然后显示搜索结果。




4



RightTabbedPane


是显示


ftp


服务器文件表格的


TabbedPane


类。



?





实现主窗口下部面板及控件,


显示下 载情况,


服务器连接信息。


包含的主要类有:

< br>



1



RemoteMessPanel


类是显示服务器连接信息的面板。需要显示


ftp


服务器传回的信息,


并在显示前进行编码 转换,还需要显示本地的相关信息。




2



DownloadingMessPanel

< p>
类是显示资源下载信息的面板,显示下载资源的大小,下载速


度,已用时间 ,剩余时间等信息。



3.5


流程逻辑



总体流程:


















PreviewWrapperPanel














上载






search




预览



3.6


简单类图



显示下载信息




4




文档



详细设计说明书



< br>4



模块


2


client


)设计说明



4.1


模块描述




实现


ftp

客户端


FtpClient


,有两个文件

< br>



,


前者具体实现了

< p>
ftp


协议,后者是为登录时可能抛出的异常而定义的类。



4.2


功能




实现


ftp

客户端


FtpClient


,实现了


ftp


协议,用于和


ftp


服务器通 讯和数据传输。



4.3


交互的模块



ui


4.4


模块设计




该模块中的主要文件,文件中包含的主要类及其功能和与其它包的交互如下:



?




:含有类


FtpClient,


,该类会被


ui


包中的界面类调用,完成


ftp


功能。



其中要功能的实现有:





构造函数中根据

< br>ip



port


建立与服务器的 连接;




5

-


-


-


-


-


-


-


-



本文更新与2021-02-09 10:15,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/620543.html

7.CDN缓存系统开发详细设计说明书剖析的相关文章