專利名稱:一種基于flash的多文件上傳技術(shù)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及B/S架構(gòu)中的多文件上傳技術(shù)。
背景技術(shù):
在互聯(lián)網(wǎng)中上傳文件是一件相當費時的操作,多文件上傳更是效率不高。這樣,提高應(yīng)用的實用性、增加客戶體驗,特別是在可視化體驗方面,變得越來越重要。而文件上傳功能是《吐2. 0時代的基本應(yīng)用之一,更應(yīng)該在各方面做的非常完善。傳統(tǒng)的文件上傳基本上是基于HTML表單的上傳,傳輸速度比較慢,往往用戶在點擊上傳按鈕后做的事情都是等待,沒有一個好的可視化體驗效果,而且每次只能上傳一個文件,數(shù)量非常有限。而FLASH多文件上傳技術(shù)不僅具有良好的用戶體驗,而且可多文件同時上傳,效率方面得到了加強。
發(fā)明內(nèi)容
在現(xiàn)有技術(shù)中,通過基于FLASH的方式實現(xiàn)文件上傳操作,不但可以同時上傳多個文件,提高了上傳效率,而且可以使用戶在上傳過程中了解文件的上傳進度,對于傳統(tǒng)的文件上傳操作是個非常好的補充。有鑒于此,本技術(shù)主要提供一種新的文件上傳方式,增加了文件上傳數(shù)量,并且文件的上傳操作變得更具交互性。為了達到上述目的,本發(fā)明的技術(shù)方案是這樣實現(xiàn)的FLASH使用一個FLASH影片來控制文件的選擇和上傳。此FLASH中包含一個用戶自定制UI的按鈕,點擊該按鈕能夠激活FLASH本身的高級文件上傳對話框,它能夠根據(jù)用戶的設(shè)置來進行單文件或者是多文件的上傳。FLASH必須在頁面中初始化,一般可以在Javakript的onload事件中完成此操作。它的構(gòu)造函數(shù)需要一個Object類型的設(shè)置對象。這個設(shè)置對象一般是一個直接定義的Object類型變量,直接傳遞給FLASH的構(gòu)造函數(shù)。初始化的FLASH對象的引用需要保留下來,因為當顯示文件選擇對話框和啟動文件上傳的時候需要這個實例的引用。另外,在上傳頁面中,F(xiàn)LASH的Javakript庫也要包含在內(nèi),當FLASH創(chuàng)建完成并能訪問它的一系列功能時,開發(fā)人員可以控制此實例。例如,添加FLASH的JavMcript 庫文件到頁面中,并根據(jù)需要的設(shè)置初始化相應(yīng)的參數(shù)。FLASH控制元素的文件地址在初始化的時候就應(yīng)該在FLASH設(shè)置對象中定義。 FLASH控制元素是一個很小的FLASH影片,它提供了文件瀏覽、檢驗和上傳功能。它在頁面中展現(xiàn)給用戶的是一個UI可自定制的按鈕,但該FLASH會在需要時候通過與JavMcript 通信來通知瀏覽器處理更新。開發(fā)人員必須定義一系列JavMcript函數(shù)來處理FLASH事件回調(diào),當一些不同的重要事件發(fā)生的時候,這些函數(shù)會被觸發(fā)。通過處理FLASH的事件,開發(fā)人員能夠提供關(guān)于上傳進度、出錯信息以及上傳完成等的信息反饋。 在上傳過程中,調(diào)用JavMcript的XMLHttpRequest對象來直接與服務(wù)器端進行通信,反映文件上傳的進度和上傳的結(jié)果。通過自定義標簽技術(shù)把操作JavMcript和FLASH的代碼封裝成Jsp標簽,在頁面中通過添加標簽元素的方式完成對程序的調(diào)用,并且提供多種各樣的操作方式。
圖IWEB服務(wù)存儲上傳文件的方式。圖2FLASH上傳方式解決方案。圖3實現(xiàn)FLASH文件上傳技術(shù)的設(shè)計流程圖。
具體實施例方式本技術(shù)的主要設(shè)計思路通過FLASH+JavMcript技術(shù)實現(xiàn)無需刷新當前頁面的動態(tài)多文件上傳,在將所有的參數(shù)設(shè)置好之后,通過Jsp的自定義標簽封裝技術(shù),將本方法封裝成標簽,在任意前臺頁面中引入該標簽,即可實現(xiàn)任意文件的上傳操作。具體實施方法如下步驟1.搭建文件服務(wù)器,用于存儲上傳文件。步驟2.將相應(yīng)的組件,相應(yīng)的JavMcript庫文件以及FLASH文件發(fā)布到Web服
務(wù)器端t步驟3.通過自定義標簽技術(shù)封裝相關(guān)的業(yè)務(wù)方法。 步驟4.前臺頁面相應(yīng)位置引用上傳標簽。
權(quán)利要求
1.一種無刷新多文件上傳技術(shù),其特征在于,各種類型的文件由任意地點的任意客戶端傳輸?shù)浇y(tǒng)一的服務(wù)器地址,并進行保存;在上傳過程中,各個文件的上傳進度將按照百分比的顯示方式呈現(xiàn)在操作界面中,可以很清楚的知道文件上傳的進度和速率。
2.根據(jù)權(quán)利要求1所述的技術(shù),其特征在于,F(xiàn)LASH處理模塊完成文件的上傳,顯示上傳進度JavMcript處理模塊實現(xiàn)頁面的無刷新操作。
3.根據(jù)權(quán)利要求2所述的技術(shù),其特征在于,所述FLASH處理模塊完成文件上傳具體為主要使用了 FLASH的FileReferenceList類實現(xiàn)多個文件上傳。
4.根據(jù)權(quán)利要求2所述的技術(shù),其特征在于,所述JavMcript處理模塊實現(xiàn)頁面的無刷新操作具體為使用JavMcript的XMLHttpRequest對象來直接與服務(wù)器端進行通信,通過這個對象,JavaScript可在不重載頁面的情況下與Web服務(wù)器交換數(shù)據(jù)。
5.根據(jù)權(quán)利要求1所述的技術(shù),其特征在于,文件上傳主要用的是HTTP傳輸協(xié)議。
全文摘要
本技術(shù)發(fā)明主要解決WEB頁面使用HTML表單實現(xiàn)文件上傳中所帶來的傳輸速度慢,一次上傳文件數(shù)量少,無法實時得到上傳信息等問題。通過本技術(shù)發(fā)明的方案,上傳組件可以一鍵添加至頁面任意位置,并且非常好的實現(xiàn)了文件上傳信息實時反饋,多文件同時上傳,達到良好的人機交互效果。
文檔編號H04L29/08GK102281327SQ20111021705
公開日2011年12月14日 申請日期2011年8月1日 優(yōu)先權(quán)日2011年8月1日
發(fā)明者薛天豹 申請人:煙臺杰瑞網(wǎng)絡(luò)商貿(mào)有限公司