本发明涉及上传下载技术领域,尤其涉及一种基于javafx自定义的对象存储上传下载方法。
背景技术:
javafx是用于构建富互联网应用程序的java库。使用该java库编写的应用程序可以跨多个平台一致运行。使用javafx开发的应用程序可以在各种设备上运行,如台式计算机、手机、电视、平板电脑等。在javafx出现前,程序员需要依赖诸如高级窗口工具包(awt)和swings之类的库,才能使用java编程语言开发gui应用程序。在javafx出现之后,可以有效地利用丰富的类库来开发gui应用程序。
对象存储具有大容量、高安全、高可靠、低成本等特点的云端存储产品,用于存储图片、音视频、文档等非结构化数据。支持高并发访问,具有完备的api及sdk接口,能帮助用户数据快速上云。
当前,客户操作对象存储仅可以通过移动云的控制台来进行文件的上传/下载,客户无法在上传/下载过程中暂停,也无法同时上传多个文件。当前采用javafx开发的现有对象存储客户端也无法解决该问题,具体来说,调用javafxapi开发的对象存储客户端无法提供好的暂停方法及状态,无法控制ui界面提示显示及后续操作,也无法对上传/下载线程池进行统一管理,实现最多同时运行指定任务数的需求。
技术实现要素:
本发明针对上述问题,提出了一种基于javafx自定义的对象存储上传下载方法。
本发明就上述技术问题而提出的技术方案如下:
本发明提出了一种对象存储上传方法,包括以下步骤:
步骤s1、选中上传文件,并获取所选中上传文件的路径;
步骤s2、建立上传文件的上传任务;设置上传文件的任务状态,并设置所述上传任务的上传进度监听;
步骤s3、调用功能jar包中上传方法,将所述上传任务添加到统一线程池中执行。
本发明上述的对象存储上传方法中,还包括:
步骤s4、当获取到暂停上传文件的上传任务的命令时,改变该上传文件的任务状态,并删除对应的上传进度监听;
步骤s5、调用功能jar包暂停上传文件的上传任务,并记录该上传文件的用于暂停后返回并继续上传的对象。
本发明上述的对象存储上传方法中,在步骤s4后,对象存储上传方法还包括:判断上传文件的任务状态是否为等待状态,若否,则进入步骤s5;
若是,则在统一线程池中删除所述上传文件的上传任务。
本发明上述的对象存储上传方法中,对象存储上传方法还包括:
步骤s6、当获取到继续上传上传文件的命令时,改变该上传文件的任务状态;新建该上传文件的上传任务,并设置该上传任务的上传进度监听;
步骤s7、调用功能jar包中继续上传方法,传入上传文件的用于暂停后返回并继续上传的对象,然后将该上传文件的上传任务添加到统一线程池中执行。
本发明还提出了一种对象存储下载方法,包括以下步骤:
步骤s1、选中下载文件,并获取所选中下载文件的路径;
步骤s2、建立下载文件的下载任务;设置下载文件的任务状态,并设置所述下载任务的下载进度监听;
步骤s3、调用功能jar包中下载方法,将所述下载任务添加到统一线程池中执行。
本发明上述的对象存储下载方法中,还包括:
步骤s4、当获取到暂停下载文件的下载任务的命令时,改变该下载文件的任务状态,并删除对应的下载进度监听;
步骤s5、调用功能jar包暂停下载文件的下载任务,并记录该下载文件的用于暂停后返回并继续下载的对象。
本发明上述的对象存储下载方法中,在步骤s4后,对象存储下载方法还包括:判断下载文件的任务状态是否为等待状态,若否,则进入步骤s5;
若是,则在统一线程池中删除所述下载文件的下载任务。
本发明上述的对象存储下载方法中,对象存储下载方法还包括:
步骤s6、当获取到继续下载下载文件的命令时,改变该下载文件的任务状态;新建该下载文件的下载任务,并设置该下载任务的下载进度监听;
步骤s7、调用功能jar包中继续下载方法,传入下载文件的用于暂停后返回并继续下载的对象,然后将该下载文件的下载任务添加到统一线程池中执行。
综上所述,本发明通过基于javafx自定义上传/下载方法实现任务暂停功能及管理同时运行的任务数,在此基础上,通过javafx实现对象存储客户端,带给客户更好的使用体验,使得对象存储这一产品可以更好地推广。本发明的基于javafx自定义的对象存储上传下载方法设计新颖,实用性强。
附图说明
图1示出了本发明基于javafx自定义的对象存储上传方法的优选实施例的流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
如图1所示,图1示出了本发明基于javafx自定义的对象存储上传方法的优选实施例的流程图,具体来说,该对象存储上传方法包括以下步骤:
步骤s1、选中上传文件,并获取所选中上传文件的路径;
步骤s2、建立上传文件的上传任务;设置上传文件的任务状态,并设置所述上传任务的上传进度监听;在这里,任务状态为javafx自定义在不同操作下的状态。
步骤s3、调用功能jar包中上传方法,将所述上传任务添加到统一线程池中执行。
在现有技术中,线程池在互联网领域得到了广泛的应用,通过引入线程池可以有效的管理线程、控制线程上限总数、以及减少创建和销毁线程所带来的开销。在上述基础方案中,通过编写上传文件的逻辑代码,再通过手动设置统一线程池将上传任务添加至线程池中后台运行,当线程占满后,其余任务进入阻塞队列,实现管理可同时运行的任务数。通过自定义状态及提示信息,并向外暴露set方法,实现反序列化后设置任务当前状态及提示信息。于是,本发明通过采用统一线程池,通过统一线程池的线程池队列对上传任务进行统一管理,降低了系统资源消耗,提高了系统的稳定性。同时,也能够实现最多同时运行指定任务数的需求。
进一步地,对象存储上传方法还包括:
步骤s4、当获取到暂停上传文件的上传任务的命令时,改变该上传文件的任务状态,并删除对应的上传进度监听;
步骤s5、调用功能jar包暂停上传文件的上传任务,并记录该上传文件的用于暂停后返回并继续上传的对象。
在步骤s4后,对象存储上传方法还包括:判断上传文件的任务状态是否为等待状态,若否,则进入步骤s5;
若是,则在统一线程池中删除所述上传文件的上传任务。
在这里,当获取到暂停上传文件的上传任务的命令时,上传文件的任务状态可以为暂停状态,也可以为等待状态。若为暂停状态,则进入步骤s5。若为等待状态,则会在统一线程池中的阻塞队列中将上传文件的上传任务删除,再调用对象存储jar包中暂停方法暂停运行状态的任务,实现上传中暂停功能,从而真正实现暂停,下次继续任务时,则会重新创建上传任务。
具体来说,对象存储上传方法还包括:
步骤s6、当获取到继续上传上传文件的命令时,改变该上传文件的任务状态;新建该上传文件的上传任务,并设置该上传任务的上传进度监听;
步骤s7、调用功能jar包中继续上传方法,传入上传文件的用于暂停后返回并继续上传的对象,然后将该上传文件的上传任务添加到统一线程池中执行。
相应地,本发明优选实施例还提出了一种对象存储下载方法包括以下步骤:
步骤s1、选中下载文件,并获取所选中下载文件的路径;
步骤s2、建立下载文件的下载任务;设置下载文件的任务状态,并设置所述下载任务的下载进度监听;在这里,任务状态为javafx自定义在不同操作下的状态。
步骤s3、调用功能jar包中下载方法,将所述下载任务添加到统一线程池中执行。
在现有技术中,线程池在互联网领域得到了广泛的应用,通过引入线程池可以有效的管理线程、控制线程上限总数、以及减少创建和销毁线程所带来的开销。在上述基础方案中,通过编写下载文件的逻辑代码,再通过手动设置统一线程池将下载任务添加至线程池中后台运行,当线程占满后,其余任务进入阻塞队列,实现管理可同时运行的任务数。通过自定义状态及提示信息,并向外暴露set方法,实现反序列化后设置任务当前状态及提示信息。于是,本发明通过采用统一线程池,通过统一线程池的线程池队列对下载任务进行统一管理,降低了系统资源消耗,提高了系统的稳定性。同时,也能够实现最多同时运行指定任务数的需求。
进一步地,对象存储下载方法还包括:
步骤s4、当获取到暂停下载文件的下载任务的命令时,改变该下载文件的任务状态,并删除对应的下载进度监听;
步骤s5、调用功能jar包暂停下载文件的下载任务,并记录该下载文件的用于暂停后返回并继续下载的对象。
在步骤s4后,对象存储下载方法还包括:判断下载文件的任务状态是否为等待状态,若否,则进入步骤s5;
若是,则在统一线程池中删除所述下载文件的下载任务。
在这里,当获取到暂停下载文件的下载任务的命令时,下载文件的任务状态可以为暂停状态,也可以为等待状态。若为暂停状态,则进入步骤s5。若为等待状态,则会在统一线程池中的阻塞队列中将下载文件的下载任务删除,再调用对象存储jar包中暂停方法暂停运行状态的任务,实现下载中暂停功能,从而真正实现暂停,下次继续任务时,则会重新创建下载任务。
具体来说,对象存储下载方法还包括:
步骤s6、当获取到继续下载下载文件的命令时,改变该下载文件的任务状态;新建该下载文件的下载任务,并设置该下载任务的下载进度监听;
步骤s7、调用功能jar包中继续下载方法,传入下载文件的用于暂停后返回并继续下载的对象,然后将该下载文件的下载任务添加到统一线程池中执行。
综上所述,本发明通过基于javafx自定义上传/下载方法实现任务暂停功能及管理同时运行的任务数,在此基础上,通过javafx实现对象存储客户端,带给客户更好的使用体验,使得对象存储这一产品可以更好地推广。本发明的基于javafx自定义的对象存储上传下载方法设计新颖,实用性强。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
1.一种对象存储上传方法,其特征在于,包括以下步骤:
步骤s1、选中上传文件,并获取所选中上传文件的路径;
步骤s2、建立上传文件的上传任务;设置上传文件的任务状态,并设置所述上传任务的上传进度监听;
步骤s3、调用功能jar包中上传方法,将所述上传任务添加到统一线程池中执行。
2.根据权利要求1所述的对象存储上传方法,其特征在于,还包括:
步骤s4、当获取到暂停上传文件的上传任务的命令时,改变该上传文件的任务状态,并删除对应的上传进度监听;
步骤s5、调用功能jar包暂停上传文件的上传任务,并记录该上传文件的用于暂停后返回并继续上传的对象。
3.根据权利要求2所述的对象存储上传方法,其特征在于,在步骤s4后,对象存储上传方法还包括:判断上传文件的任务状态是否为等待状态,若否,则进入步骤s5;
若是,则在统一线程池中删除所述上传文件的上传任务。
4.根据权利要求3所述的对象存储上传方法,其特征在于,对象存储上传方法还包括:
步骤s6、当获取到继续上传上传文件的命令时,改变该上传文件的任务状态;新建该上传文件的上传任务,并设置该上传任务的上传进度监听;
步骤s7、调用功能jar包中继续上传方法,传入上传文件的用于暂停后返回并继续上传的对象,然后将该上传文件的上传任务添加到统一线程池中执行。
5.一种对象存储下载方法,其特征在于,包括以下步骤:
步骤s1、选中下载文件,并获取所选中下载文件的路径;
步骤s2、建立下载文件的下载任务;设置下载文件的任务状态,并设置所述下载任务的下载进度监听;
步骤s3、调用功能jar包中下载方法,将所述下载任务添加到统一线程池中执行。
6.根据权利要求5所述的对象存储下载方法,其特征在于,还包括:
步骤s4、当获取到暂停下载文件的下载任务的命令时,改变该下载文件的任务状态,并删除对应的下载进度监听;
步骤s5、调用功能jar包暂停下载文件的下载任务,并记录该下载文件的用于暂停后返回并继续下载的对象。
7.根据权利要求6所述的对象存储下载方法,其特征在于,在步骤s4后,对象存储下载方法还包括:判断下载文件的任务状态是否为等待状态,若否,则进入步骤s5;
若是,则在统一线程池中删除所述下载文件的下载任务。
8.根据权利要求7所述的对象存储下载方法,其特征在于,对象存储下载方法还包括:
步骤s6、当获取到继续下载下载文件的命令时,改变该下载文件的任务状态;新建该下载文件的下载任务,并设置该下载任务的下载进度监听;
步骤s7、调用功能jar包中继续下载方法,传入下载文件的用于暂停后返回并继续下载的对象,然后将该下载文件的下载任务添加到统一线程池中执行。
技术总结