專利名稱:一種多文件并發(fā)上傳的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種多文件上傳的方法,尤其是一種多文件并發(fā)上傳的方法。本發(fā)明屬于通信技術(shù)領(lǐng)域。
背景技術(shù):
目前在廣域網(wǎng)內(nèi)傳輸批量文件是一件非常耗時的事情,批量文件在進行傳輸時傳輸效率較低,主要是由于傳輸文件的上傳等待時間和人工操作占據(jù)了文件傳輸耗時中相當大的比例?,F(xiàn)有的文件傳輸技術(shù)中主要有兩種處理多個文件上傳的方法一種是多個文件分別上傳的方法,該方法是通過簡單的多次調(diào)用單個文件傳輸函數(shù)的方法實現(xiàn)的。另外一種多文件上傳方法是多文件磁盤打包上傳,該方法是指把多個待上傳的文件在磁盤中打包成一個包文件上傳。然而,通過現(xiàn)有的文件傳輸技術(shù)每上傳一個文件,都需要發(fā)送一次文件上傳請求命令,即需要一次人工參與,所以當上傳文件的數(shù)目龐大且每個文件較小時,人工操作所消耗的時間將遠遠大于文件傳輸本身所消耗的時間。另一方面,客戶端在上傳的文件時,都是將所有的待上傳文件按照先進先出的原則進行排序,一次只上傳一個文件,其它的文件都進入隊列進行等待,當一次性上傳的文件數(shù)量較多的時候,等待上傳文件的時間將遠遠大于文件傳輸本身所消耗的時間。本發(fā)明要解決的問題是提供一種多文件并發(fā)上傳的方法,通過并發(fā)上傳組件創(chuàng)建多個線程,利用單個線程向服務(wù)器提出上傳文件的請求,因為單個線程之間的運行的獨立的,克服現(xiàn)有技術(shù)中多文件上傳效率低的缺陷。顯然,現(xiàn)有的文檔管理系統(tǒng)并不能滿足管理者的需求。
發(fā)明內(nèi)容
本發(fā)明的目的在于針對以上現(xiàn)有技術(shù)存在的不足,提供一種多文件并發(fā)上傳的方法,以克服現(xiàn)有技術(shù)中多文件上傳效率低的缺陷。為了達到以上目的,本發(fā)明含有如下組件客戶端運行軟件一用于和客戶端進行交互的軟件終端系統(tǒng);數(shù)據(jù)庫-一用于存放用戶要存儲的各種數(shù)據(jù)。以上兩個組件由以下各小組件組成客戶端運行軟件由以下幾個組件組成客戶端界面---用于和用戶進行文檔上傳操作的交互;數(shù)據(jù)訪問組件——用以訪問數(shù)據(jù)庫中存儲的數(shù)據(jù);并發(fā)上傳組件——用以開啟多個線程,向服務(wù)器發(fā)出上傳文件的請求。并發(fā)組件由以下方法組成SelectFiles函數(shù)——用以選擇需要上傳的文件;
Create函數(shù)——用以創(chuàng)建單個線程;Request函數(shù)——用以向服務(wù)器發(fā)出上傳文件的請求;Destroy函數(shù)——用以銷毀單個線程;Upload函數(shù)——用以上傳文件。數(shù)據(jù)庫由以下幾部分組成用戶資料表一記錄用戶的基本資料。用戶使用步驟為步驟一使用客戶端運行軟件,系統(tǒng)管理員注冊系統(tǒng)用戶,包括用戶姓名,用戶名, 密碼等等,客戶端運行軟件將調(diào)用數(shù)據(jù)訪問組件將用戶基本信息保存到數(shù)據(jù)庫的用戶資料表中。步驟二 使用客戶端運行軟件,調(diào)用并發(fā)上傳組件的klectFiles函數(shù),選擇需要上傳的文件,同時分別創(chuàng)建多個系統(tǒng)變量,分別將選中文件的物理地址保存在變量中,并記錄一次性上傳文件的總個數(shù)。步驟三使用客戶端運行軟件,當用戶發(fā)出上傳請求時,獲取之前記錄的一次性上傳文件總個數(shù),調(diào)用并發(fā)上傳組件的Create函數(shù),循環(huán)創(chuàng)建單個線程,并且循環(huán)創(chuàng)建的次數(shù)與一次性上傳文件總個數(shù)相同。在創(chuàng)建單個線程的同時,調(diào)用Request函數(shù),向服務(wù)器發(fā)出上傳文件的請求。步驟四使用客戶端運行軟件,當服務(wù)器收到上傳請求,并作出接收文件的響應(yīng)時,調(diào)用并發(fā)上傳組件的Upload函數(shù),向服務(wù)器上傳文件。并在上傳文件操作結(jié)束后,調(diào)用 Destroy函數(shù),銷毀當前線程。如此,通過本發(fā)明,用戶可以減少傳輸文件的上傳等待時間和人工操作時間,從而更好的實現(xiàn)文檔的高效管理。
具體實施例方式實施例一使用Microsoft VisualMudio. Net開發(fā)工具開發(fā)客戶端運行軟件,使用市場上專用的數(shù)據(jù)庫管理工具SqlkrverfOOO建立系統(tǒng)所需要的數(shù)據(jù)庫,具體方式為客戶端運行軟件一用于和客戶端進行交互的軟件終端系統(tǒng);數(shù)據(jù)庫-一用于存放用戶要存儲的各種數(shù)據(jù)。以上兩個組件由以下各小組件組成客戶端運行軟件由以下幾個組件組成客戶端界面一用于和用戶進行文檔上傳操作的交互;數(shù)據(jù)訪問組件——用以訪問數(shù)據(jù)庫中存儲的數(shù)據(jù);并發(fā)上傳組件——用以開啟多個線程,向服務(wù)器發(fā)出上傳文件的請求。并發(fā)組件由以下方法組成SelectFiles函數(shù)——用以選擇需要上傳的文件;Create函數(shù)——用以創(chuàng)建單個線程;Request函數(shù)——用以向服務(wù)器發(fā)出上傳文件的請求;Destroy函數(shù)——用以銷毀單個線程;
Upload函數(shù)——用以上傳文件。數(shù)據(jù)庫由以下幾部分組成用戶資料表一記錄用戶的基本資料。用戶使用步驟為步驟一使用客戶端運行軟件,系統(tǒng)管理員注冊系統(tǒng)用戶,包括用戶姓名,用戶名, 密碼等等,客戶端運行軟件將調(diào)用數(shù)據(jù)訪問組件將用戶基本信息保存到數(shù)據(jù)庫的用戶資料表中。步驟二 使用客戶端運行軟件,調(diào)用并發(fā)上傳組件的klectFiles函數(shù),選擇需要上傳的文件,同時分別創(chuàng)建多個系統(tǒng)變量,分別將選中文件的物理地址保存在變量中,并記錄一次性上傳文件的總個數(shù)。步驟三使用客戶端運行軟件,當用戶發(fā)出上傳請求時,獲取之前記錄的一次性上傳文件總個數(shù),調(diào)用并發(fā)上傳組件的Create函數(shù),循環(huán)創(chuàng)建單個線程,并且循環(huán)創(chuàng)建的次數(shù)與一次性上傳文件總個數(shù)相同。在創(chuàng)建單個線程的同時,調(diào)用Request函數(shù),向服務(wù)器發(fā)出上傳文件的請求。步驟四使用客戶端運行軟件,當服務(wù)器收到上傳請求,并作出接收文件的響應(yīng)時,調(diào)用并發(fā)上傳組件的Upload函數(shù),向服務(wù)器上傳文件。并在上傳文件操作結(jié)束后,調(diào)用 Destroy函數(shù),銷毀當前線程。除上述實施例外,本發(fā)明還可以有其他實施方式。凡采用等同替換或等效變換形成的技術(shù)方案,均落在本發(fā)明要求的保護范圍。
權(quán)利要求
1.一種多文件并發(fā)上傳的方法,其特征在于可以通過并發(fā)上傳組件創(chuàng)建多個線程,利用單個線程向服務(wù)器提出上傳文件的請求,并完成文件上傳操作。
2.根據(jù)權(quán)利要求1所述一種多文件并發(fā)上傳的方法,其特征在于含有并發(fā)上傳組件, 用以開啟多個線程,并向服務(wù)器發(fā)出上傳文件的請求。
3.根據(jù)權(quán)利要求1所述一種多文件并發(fā)上傳的方法,其特征在于還含有數(shù)據(jù)訪問組件,用以訪問數(shù)據(jù)庫中存儲的數(shù)據(jù)。
全文摘要
本發(fā)明涉及一種多文件并發(fā)上傳的方法。通過并發(fā)上傳組件創(chuàng)建多個線程,利用單個線程向服務(wù)器提出上傳文件的請求,并完成文件上傳操作。該系統(tǒng)包含用以開啟多個線程,向服務(wù)器發(fā)出上傳文件請求的并發(fā)上傳組件;用于和客戶端進行交互的客戶端軟件終端系統(tǒng);用于用戶存儲各種數(shù)據(jù)的數(shù)據(jù)庫。本發(fā)明解決了現(xiàn)有技術(shù)中多文件上傳效率低的缺陷的問題。
文檔編號H04L29/08GK102455899SQ201010523998
公開日2012年5月16日 申請日期2010年10月29日 優(yōu)先權(quán)日2010年10月29日
發(fā)明者李驍淳 申請人:鎮(zhèn)江雅迅軟件有限責任公司