NetBeans平台主导swing,实例项目:多资源下载平台

1.      背景(Background)

虽然工作是从事WEB应用程序开发已经多年,但也不会太关注于底层的网络协议,一年前把网络协议HTTPFTP规范粗略的看了一遍,就用Socket基于这两种协议写了一个多线程下载组件,后来又用Swing为之开发了界面,但基于Swing功底太差了,开发出来的东西怎么看都觉得别扭,最后发现NETBEANS平台是个不错的开发桌面应用程序框架,提供容器管理我们的桌面应用程序,这正如我们开发WEB应用程序一样,于是发时间研究了一下,经历了无数个夜晚的煎熬,终于成功的将前台移到NETBEANS平台上,在这里发出来给大家分享一下。

2.      目的(Objective)

Windows平台下面,迅雷可谓是一手遮天,凭借着卓越的下载速度几乎挤兑所有的下载工具,而它并未提供Linux版,当初玩Linux常为此苦恼,这也是开发此下载工具的动力。当然,在单资源的情况下多线程的情况下,提现不出太大的优势,项目的目的是能在某一范围提供优越的下载速度,以得到推广,而不是走马观花,后继考虑实现BT多资源多线程下载,成为项目的亮点,以便推广。

3.      项目范围(Project Range)

软件暂时实了HTP,FTP多线程下载功能,其操作方式与迅雷类似。软件分为两个部分,JDownloaderJDownload Component, JDownlaoder是利用NetBeans平台所开发的UI,可以无障碍的进行功能添加,JDownlaod Component作为下载组件,可提供可扩展的多线程下载服务。本软件在1.6版本的JDK上开发,要求1.6以上的java运行环境。

 

 

下载组件所具备的持点

 

1)         作为组件实现通用下载功能,提供方便可展的API给应用程序使用。使得应用程序能够方便的管理下载生命周期,并能轻松加入自己扩展的功能到其中。

2)         具有记忆功能,当下载出现异常被迫停止或用户触发停止时,要求记录完成的数据范围,当第二次下载时,接着上次记录的数据范围继续下载

3)         具有自动管理下载线程功能,当某个线重提前完成自己的下载的数据范围后将分当下载最慢的线程的数据范围;同样,当个别线程网络通讯,磁盘 I/O 上上发生导常而被中断时,它将会再一次被唤醒。

4)         良好的异常处理,确保下载的完整性。

5)         提供良好可扩展性。新的协议被采用后,能轻松的增加对协议的支持。

6)         支持多个线程、多资源下载,当然,下载资源是可贵的,这里所说的支持多资源下载指的是组件需要为多资源平台提供扩展。

 

 

项目地址

http://code.google.com/p/jdownload/

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值