本發(fā)明涉及計算機技術領域,特別涉及一種圖片上傳方法及裝置。
背景技術:
隨著計算機技術的不斷發(fā)展與進步,計算機被廣泛應用于生活及生產中的各個領域,在計算機使用過程中,經常會遇到通過網(wǎng)頁將存儲于本地計算機的圖片上傳至服務器的情況。
目前,在需要將存儲于本地計算機上的圖片上傳至服務器時,由用戶手動選擇本地計算機上的圖片,點擊上傳按鈕將圖片上傳至服務器。
針對于現(xiàn)有通過網(wǎng)頁將圖片上傳至服務器的方法,需要用戶手動完成圖片選擇和上傳按鈕點擊的動作,但是在一些應用場景下圖片是不需要進行選擇的,比如將攝像頭拍攝的監(jiān)控照片全部上傳至服務器,此時用戶仍需要通過手動操作的方式不斷重復選擇本地計算機上的圖片及點擊上傳按鈕的動作,造成用戶體驗較差。
技術實現(xiàn)要素:
本發(fā)明實施例提供了一種圖片上傳方法及裝置,能夠提升用戶的體驗。
第一方面,本發(fā)明實施例提供了一種圖片上傳方法,在外部的客戶端上加載小應用程序applet,還包括:
接收所述客戶端對觸發(fā)web頁面進行訪問的觸發(fā)事件,其中,所述觸發(fā)web頁面的超文本標記語言html文件代碼中包括applet標記;
根據(jù)所述觸發(fā)事件,從所述applet中獲取圖片上傳applet處理類;
通過所述圖片上傳applet處理類,對所述客戶端上的待上傳圖片進行封裝;
通過超文本傳輸協(xié)議http將封裝后的所述待上傳圖片上傳至外部的服務器。
優(yōu)選地,
所述在外部的客戶端上加載小應用程序applet,包括:
對所述客戶端訪問web頁面的過程進行監(jiān)測;
判斷所述客戶端是否為首次訪問觸發(fā)web頁面;
如果是,從所述服務器上獲取所述applet,并將所述applet加載到所述客戶端上。
優(yōu)選地,
在所述將所述applet加載到所述客戶端上之后,進一步包括:
對所述applet進行編譯形成javaclass文件,并將所述javaclass文件嵌入到所述觸發(fā)web頁面,以在所述觸發(fā)web頁面再次被打開時將所述applet加載到所述客戶端。
優(yōu)選地,
所述從所述applet中獲取圖片上傳applet處理類,包括:
通過名稱屬性在所述applet中進行索引,獲取圖片上傳applet;
通過存儲路徑屬性在所述圖片上傳applet中進行索引,獲取用于圖片上傳的java歸檔文件jar包的路徑;
通過編碼屬性在所述jar包的路徑中進行索引,獲取所述圖片上傳applet處理類。
優(yōu)選地,
所述通過所述圖片上傳applet處理類對所述客戶端上的待上傳圖片進行封裝,包括:
調用所述圖片上傳applet處理類的圖片上傳方法,創(chuàng)建抽象類httpurlconnection對象,通過所述httpurlconnection對象對所述客戶端上的待上傳圖片進行封裝。
第二方面,本發(fā)明實施例還提供了一種圖片上傳裝置,包括:加載單元、獲取單元、封裝單元及上傳單元;
所述加載單元,用于在外部的客戶端上加載小應用程序applet;
所述獲取單元,用于接收所述客戶端對觸發(fā)web頁面進行訪問的觸發(fā)事件,并根據(jù)所述觸發(fā)事件從所述加載單元加載的所述applet中獲取圖片上傳applet處理類;其中,所述觸發(fā)web頁面的超文本標記語言html文件代碼中包括applet標記;
所述封裝單元,用于通過所述獲取單元獲取到的所述圖片上傳applet處理類,對所述客戶端上的待上傳圖片進行封裝;
所述上傳單元,用于通過超文本傳輸協(xié)議http將所述封裝單元封裝后的所述上傳圖片上傳至外部的服務器。
優(yōu)選地,
所述加載單元,用于對所述客戶端訪問web頁面的過程進行監(jiān)測,判斷所述客戶端是否為首次訪問觸發(fā)web頁面,如果是,從所述服務器上獲取所述applet,并將所述applet加載到所述客戶端上。
優(yōu)選地,
該圖片上傳裝置進一步包括:嵌入單元;
所述嵌入單元,用于對所述加載單元加載的所述applet進行編譯形成javaclass文件,并將所述javaclass文件嵌入到所述觸發(fā)web頁面,以在所述觸發(fā)web頁面再次被打開時將所述applet加載到所述客戶端。
優(yōu)選地,
所述獲取單元包括:獲取子單元;
所述獲取子單元,用于通過名稱屬性在所述applet中進行索引,獲取圖片上傳applet;通過存儲路徑屬性在所述圖片上傳applet中進行索引,獲取用于圖片上傳的java歸檔文件jar包的路徑;通過編碼屬性在所述jar包的路徑中進行索引,獲取所述圖片上傳applet處理類。
優(yōu)選地,
所述封裝單元,用于調用所述圖片上傳applet處理類的圖片上傳方法,創(chuàng)建抽象類httpurlconnection對象,通過所述httpurlconnection對象對所述客戶端上的待上傳圖片進行封裝。
本發(fā)明實施例提供了一種圖片上傳方法及裝置,在客戶端上加載applet后,當客戶端對包括有applet標記的觸發(fā)web頁面進行訪問時,從所加載的applet中獲取圖片上傳applet處理類,圖片上傳applet處理類能夠對客戶端上的待上傳圖片進行封裝,進而可以通過http將封裝后的待上傳圖片上傳至服務器。由此可見,當客戶端對觸發(fā)web頁面進行訪問時,如果客戶端上存在有待上傳的圖片,則自動通過圖片上傳applet處理類對待上傳圖片進行封裝,并上傳至服務器,圖片上傳過程無需用戶手動操作,從而提升了用戶的體驗。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明一個實施例提供的一種圖片上傳方法的流程圖;
圖2是本發(fā)明另一個實施例提供的一種圖片上傳方法的流程圖;
圖3是本發(fā)明一個實施例提供的一種圖片上傳裝置所在設備的示意圖;
圖4是本發(fā)明一個實施例提供的一種圖片上傳裝置的示意圖;
圖5是本發(fā)明另一個實施例提供的一種圖片上傳裝置的示意圖。
具體實施方式
為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例,基于本發(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
如圖1所示,本發(fā)明實施例提供了一種圖片上傳方法,該方法可以包括以下步驟:
步驟101:在外部的客戶端上加載小應用程序applet;
步驟102:接收所述客戶端對觸發(fā)web頁面進行訪問的觸發(fā)事件,其中,所述觸發(fā)web頁面的超文本標記語言html文件代碼中包括applet標記;
步驟103:根據(jù)所述觸發(fā)事件,從所述applet中獲取圖片上傳applet處理類;
步驟104:通過所述圖片上傳applet處理類,對所述客戶端上的待上傳圖片進行封裝;
步驟105:通過超文本傳輸協(xié)議http將封裝后的所述待上傳圖片上傳至外部的服務器。
本發(fā)明實施例提供了一種圖片上傳方法,在客戶端上加載applet后,當客戶端對包括有applet標記的觸發(fā)web頁面進行訪問時,從所加載的applet中獲取圖片上傳applet處理類,圖片上傳applet處理類能夠對客戶端上的待上傳圖片進行封裝,進而可以通過http將封裝后的待上傳圖片上傳至服務器。由此可見,當客戶端對觸發(fā)web頁面進行訪問時,如果客戶端上存在有待上傳的圖片,則自動通過圖片上傳applet處理類對待上傳圖片進行封裝,并上傳至服務器,圖片上傳過程無需用戶手動操作,從而提升了用戶的體驗。
在本發(fā)明一個實施例中,步驟101中在客戶端上加載applet時,對客戶端訪問web頁面的過程進行監(jiān)測,針對于每一次訪問過程進行監(jiān)測,判斷客戶端是否為首次訪問觸發(fā)web頁面,如果是,則從服務器上獲取applet,并將獲取到的applet加載到客戶端上。
具體地,當web頁面的html文件代碼中包括applet標記時,說明該web頁面可以調用applet,當客戶端首次對html文件代碼中包括applet標記的觸發(fā)web頁面進行訪問時,從服務器下載applet,并將下載的applet加載到客戶端上。從而在客戶端上存在待上傳圖片時,利用applet中包括的圖片上傳applet處理類對待上傳圖片進行封裝,進而將待上傳圖片上傳到服務器上。這樣,在客戶端對觸發(fā)web頁面進行訪問過程中,每當客戶端上出現(xiàn)待上傳圖片時,待上傳圖片均能夠被自動上傳至服務器,整個過程均無需人工操作,保證用戶具有較好的體驗。
在本發(fā)明一個實施例中,步驟101中在客戶端上加載applet后,通過對applet進行編譯形成javaclass文件,并將所形成的javaclass文件嵌入到觸發(fā)web頁面中。
具體地,在將applet加載到客戶端上之后,由客戶端對applet進行編譯形成javaclass文件,并將javaclass文件嵌入到觸發(fā)web頁面中,以后每次客戶端訪問html文件代碼中包括applet標記的觸發(fā)web頁面時,applet都會隨著觸發(fā)web頁面加載到客戶端中進行運行。這樣,applet加載到客戶端后,下次再次調用時,無需重新從服務器加載,由于節(jié)省了從服務器重新下載applet的時間,從而可以提高圖片上傳的速率。
在本發(fā)明一個實施例中,在接收到客戶端對觸發(fā)web頁面進行訪問的觸發(fā)時間后,首先,通過名稱(name)屬性在applet中進行索引,找到用于上傳圖片至服務器的圖片上傳applet;然后,通過存儲路徑(archive)屬性在圖片上傳applet中進行索引,找到用于上傳圖片至服務器的jar包的路徑,其中jar包中封裝有獲取客戶端圖片數(shù)據(jù)相關代碼;最后通過編碼(code)屬性在jar包括的路徑下進行索引,獲得圖片上傳applet處理類。
具體地,通過applet的name屬性imagesave找到用于上傳圖片到服務器的圖片上傳applet,通過archive屬性找到imagesave.jar的路徑,進而通過code屬性找到applet的處理類imagesave,處理類imagesave即為圖片上傳applet處理類。由于將獲取客戶端圖片數(shù)據(jù)相關代碼都封裝到imagesave.jar中,只需要引入相應的jar包即可在頁面中使用,具有良好的易用性和兼容性,從而提高了本發(fā)明實施例所提供的圖片上傳方法的適用性。
在本發(fā)明一個實施例中,步驟104利用圖片上傳applet處理類對待上傳圖片進行封裝時,調用圖片上傳applet處理類的圖片上傳方法,創(chuàng)建抽象類httpurlconnection對象,通過httpurlconnection對象對客戶端上的待上傳圖片進行封裝。
具體地,由于httpurlconnection是一種多用途、輕量級的http客戶端,適用于大多數(shù)的應用程序,支持緩存功能,具有良好的易用性和擴展性,因此,調用圖片上傳applet處理類的圖片上傳方法創(chuàng)建httpurlconnection對象后,通過httpurlconnection對象對待上傳圖片進行封裝的方法,可以適用于各種格式的待上傳圖片以及各種類型的客戶端,進一步提高了該圖片上傳方法的適用性。
下面以糧庫系統(tǒng)對車輛過磅圖片進行上傳為例,對本發(fā)明實施例所提供的圖片上傳方法作進一步詳細說明,如圖2所示,該方法可以包括以下步驟:
步驟201:訪問觸發(fā)web頁面,將applet從服務器加載到客戶端。
在本發(fā)明一個實施例中,對客戶端訪問web頁面的過程進行監(jiān)控,當監(jiān)測到客戶端首次對html(超文本標記語言)文件代碼中包括applet標記的觸發(fā)web頁面進行訪問時,從服務器獲取applet,并將獲取到的applet加載到客戶端。
例如,在糧庫中,為了避免糧食過磅過程中存在的風險,在載糧車輛通過地磅時,位于地磅之前和之后的兩個攝像頭捕捉載糧車輛過磅過程中的圖片,并將采集到的圖片上傳至服務器,用于作為糧款結算的憑證。以糧庫管理軟件為客戶端,稱重頁面作為觸發(fā)web頁面。當糧庫管理軟件首次訪問稱重頁面時,從與糧庫管理軟件相連的服務器上下載applet,并將所下載的applet加載到糧庫管理軟件上。
步驟202:對applet進行編譯形成javaclass文件,并將javaclass文件嵌入到觸發(fā)web頁面。
在本發(fā)明一個實施例中,在客戶端上加載applet時需要對applet進行編譯,applet經編譯后產生javaclass文件,將所產生的javaclass文件嵌入到觸發(fā)web頁面中。
例如,在糧庫管理軟件上加載applet時,需要對applet進行編譯,將編譯所產生的javaclass文件嵌入到稱重頁面后,以后每次訪問稱重頁面時,將自動加載applet。
步驟203:接收圖片上傳觸發(fā),從applet中獲取圖片上傳applet處理類。
在本發(fā)明一個實施例中,接收到圖片上傳觸發(fā)后,通過name屬性imagesave找到用于上傳圖片到服務器的圖片上傳applet,通過archive屬性找到imagesave.jar的路徑,進而通過code屬性找到applet的處理類imagesave。處理類imagesave即為圖片上傳applet處理類。其中,圖片上傳觸發(fā)可以是對觸發(fā)web頁面進行訪問,即當客戶端訪問觸發(fā)web頁面時,觸發(fā)從applet中獲取圖片上傳applet處理類的動作。
例如,當糧庫管理軟件訪問稱重頁面時,從加載在糧庫管理軟件上的applet中獲取圖片上傳applet處理類。
步驟204:通過圖片上傳applet處理類對客戶端上的待上傳圖片進行封裝。
在本發(fā)明一個實施例中,在獲取到圖片上傳applet處理類后,調用圖片上傳applet處理類的圖片上傳方法saveimage(),創(chuàng)建httpurlconnection對象,設置相關參數(shù),創(chuàng)建輸入輸出流對象,將客戶端上待上傳圖片的信息讀取到輸出流中,設置要發(fā)送給服務器的http請求地址。
例如,調用圖片上傳applet處理類的上傳方法,創(chuàng)建httpurlconnection對象,將輸入對象設置為與糧庫管理軟件相連的服務器,將輸出對象設置為糧庫管理軟件,將攝像頭采集到的車輛過磅圖片1和車輛過磅圖片2的信息讀取到輸出流中。
步驟205:通過http將封裝后的待上傳圖片上傳至服務器。
在本發(fā)明一個實施例中,將客戶端上待上傳圖片的信息讀取到輸出流中,并完成相應的設置之后,發(fā)送http請求到服務器,將圖片信息以輸出流的形式發(fā)送給服務器。
例如,糧庫管理軟件向服務器發(fā)送http請求,將車輛過磅圖片1和車輛過磅圖片2的圖片信息以輸出流的形式發(fā)送給服務器。
步驟206:服務器解析客戶端發(fā)送的http請求,將圖片保存到服務器。
在本發(fā)明一個實施例中,服務器獲取客戶端傳輸?shù)膱D片輸入流數(shù)據(jù),設置好圖片保存路徑及文件名后,將待上傳圖片存儲到指定的文件夾下。
例如,服務器接收到糧庫管理軟件傳輸?shù)膱D片輸出流數(shù)據(jù)后,對糧庫管理軟件上傳的車輛過磅圖片1和車輛過磅圖片2進行存儲,以備相應車輛進行兩款結算時使用。
在本發(fā)明一個實施例中,系統(tǒng)觸發(fā)上傳功能后,獲取用于上傳圖片到服務器的圖片上傳applet處理類的過程可以通過腳本代碼實現(xiàn),具體可以包括以下代碼:
<appletcode="imagesave.class"
archive="<loushang:uipath/>jsp/genersoft/pub/applet/ecard/imagesave/imagesave.jar"
name="imagesave"
height="0"http://設置applet為隱藏
width="0"
hspace="0"
vspace="0">
</applet>。
在本發(fā)明一個實施例中,對待上傳圖片進行封裝,并發(fā)送http請求到服務器的過程也可以通過腳本代碼實現(xiàn),具體可以包括以下代碼:
//定義客戶端發(fā)送給服務器的保存圖片的http請求地址
stringurl=sinopath+"imagesavecmd.cmd?method=imagesave&djnm="+djnm;
//將url封裝成url對象
urlurlobj=newurl(url);
//建立連接
httpurlconnectioncon=(httpurlconnection)urlobj.openconnection();
//設置參數(shù)
con.setrequestmethod("post");
con.setdoinput(true);
con.setdooutput(true);
con.setusecaches(false);
con.setrequestproperty("connection","keep-alive");
con.setrequestproperty("charset","utf-8");
con.setrequestproperty("content-type","multipart/form-data");
//創(chuàng)建輸出流對象
outputstreamout=newdataoutputstream(con.getoutputstream());
//創(chuàng)建輸入流對象,從本地計算機指定文件讀取數(shù)據(jù)
datainputstreamin=newdatainputstream(newfileinputstream(file));
intbytes=0;
byte[]bufferout=newbyte[1024];
//讀取客戶端文件數(shù)據(jù)寫到輸出流對象中
while((bytes=in.read(bufferout))!=-1){
out.write(bufferout,0,bytes);
}
//關閉輸入輸出流
in.close();
out.flush();
out.close();
//將封裝好圖片數(shù)據(jù)的完整的http請求發(fā)送到服務器。
bufferedinputstreaminputstream=newbufferedinputstream(con.getinputstream())。
在本發(fā)明一個實施例中,服務器解析客戶端發(fā)送的http請求,保存圖片到服務器的過程也可以通過腳本代碼實現(xiàn),具有可以包括以下代碼:
//獲取服務器路徑
stringfilepath=req.getsession().getservletcontext().getrealpath("/");
filefile=newfile(filepath);
if(!file.exists()){
file.mkdirs();
}
try{
stringtime=datetool.getcurrenttimemillisasstring("yyyymmddhhmmss");
intv=0;
//獲取輸入流
bufferedinputstreaminputstream=newbufferedinputstream(req.getinputstream());
stringdjnm=req.getparameter("djnm");
//設置圖片保存路徑及文件名
filepath=filepath+djnm+".jpeg";
byte[]bytes=newbyte[1024];
fileoutputstreamfos=newfileoutputstream(filepath);
bufferedoutputstreambos=newbufferedoutputstream(fos,1024*1024*5);
byte[]data=newbyte[1024*1024];//1mb
intlen;
//上傳圖片到服務器的指定文件夾下
while((len=inputstream.read(data,0,data.length))?。?1){
bos.write(data,0,len);
}
//手動清空緩沖空間
bos.flush();
//關閉輸入輸出流
inputstream.close();
bos.close();
}catch(ioexceptione){
system.out.println(e.getmessage());
}。
如圖3、圖4所示,本發(fā)明實施例提供了一種圖片上傳裝置。裝置實施例可以通過軟件實現(xiàn),也可以通過硬件或者軟硬件結合的方式實現(xiàn)。從硬件層面而言,如圖3所示,為本發(fā)明實施例提供的圖片上傳裝置所在設備的一種硬件結構圖,除了圖3所示的處理器、內存、網(wǎng)絡接口、以及非易失性存儲器之外,實施例中裝置所在的設備通常還可以包括其他硬件,如負責處理報文的轉發(fā)芯片等等。以軟件實現(xiàn)為例,如圖4所示,作為一個邏輯意義上的裝置,是通過其所在設備的cpu將非易失性存儲器中對應的計算機程序指令讀取到內存中運行形成的。本實施例提供的圖片上傳裝置,包括:加載單元401、獲取單元402、封裝單元403及上傳單元404;
所述加載單元401,用于在外部的客戶端上加載小應用程序applet;
所述獲取單元402,用于接收所述客戶端對觸發(fā)web頁面進行訪問的觸發(fā)事件,并根據(jù)所述觸發(fā)事件從所述加載單元401加載的所述applet中獲取圖片上傳applet處理類;其中,所述觸發(fā)web頁面的超文本標記語言html文件代碼中包括applet標記;
所述封裝單元403,用于通過所述獲取單元402獲取到的所述圖片上傳applet處理類,對所述客戶端上的待上傳圖片進行封裝;
所述上傳單元404,用于通過超文本傳輸協(xié)議http將所述封裝單元403封裝后的所述上傳圖片上傳至外部的服務器。
在本發(fā)明一個實施例中,所述加載單元401用于對所述客戶端訪問web頁面的過程進行監(jiān)測,判斷所述客戶端是否為首次訪問觸發(fā)web頁面,如果是,從所述服務器上獲取所述applet,并將所述applet加載到所述客戶端上。
在本發(fā)明一個實施例中,該圖片上傳裝置進一步可以包括:嵌入單元505;
嵌入單元505,用于對所述加載單元401加載的所述applet進行編譯形成javaclass文件,并將所述javaclass文件嵌入到所述觸發(fā)web頁面,以在所述觸發(fā)web頁面再次被打開時將所述applet加載到所述客戶端。
在本發(fā)明一個實施例中,所述獲取單元402包括:獲取子單元;
所述獲取子單元,用于通過名稱屬性在所述applet中進行索引,獲取圖片上傳applet;通過存儲路徑屬性在所述圖片上傳applet中進行索引,獲取用于圖片上傳的java歸檔文件jar包的路徑;通過編碼屬性在所述jar包的路徑中進行索引,獲取所述圖片上傳applet處理類。
在本發(fā)明一個實施例中,所述封裝單元403用于調用所述圖片上傳applet處理類的圖片上傳方法,創(chuàng)建抽象類httpurlconnection對象,通過所述httpurlconnection對象對所述客戶端上的待上傳圖片進行封裝。
上述裝置內的各單元之間的信息交互、執(zhí)行過程等內容,由于與本發(fā)明方法實施例基于同一構思,具體內容可參見本發(fā)明方法實施例中的敘述,此處不再贅述。
本發(fā)明一個實施例還提供了一種可讀介質,包括執(zhí)行指令,當存儲控制器的處理器執(zhí)行所述執(zhí)行指令時,所述存儲控制器執(zhí)行上述各個實施例提供的圖片上傳方法。
本發(fā)明一個實施例還提供了一種存儲控制器,包括:處理器、存儲器和總線;
所述存儲器用于存儲執(zhí)行指令,所述處理器與所述存儲器通過所述總線連接,當所述存儲控制器運行時,所述處理器執(zhí)行所述存儲器存儲的所述執(zhí)行指令,以使所述存儲控制器執(zhí)行上述各個實施例提供的圖片上傳方法。
綜上所述,本發(fā)明各個實施例提供的圖片上傳方法及裝置,至少具有如下有益效果:
1、在本發(fā)明實施例提供的圖片上傳方法及裝置中,在客戶端上加載applet后,當客戶端對包括有applet標記的觸發(fā)web頁面進行訪問時,從所加載的applet中獲取圖片上傳applet處理類,圖片上傳applet處理類能夠對客戶端上的待上傳圖片進行封裝,進而可以通過http將封裝后的待上傳圖片上傳至服務器。由此可見,當客戶端對觸發(fā)web頁面進行訪問時,如果客戶端上存在有待上傳的圖片,則自動通過圖片上傳applet處理類對待上傳圖片進行封裝,并上傳至服務器,圖片上傳過程無需用戶手動操作,從而提升了用戶的體驗。
2、在本發(fā)明實施例提供的圖片上傳方法及裝置中,在客戶端首次訪問html文件代碼中包括applet標記的觸發(fā)web頁面時,從服務器下載applet并加載到客戶端上,在客戶端上存在待上傳圖片時,利用applet中包括的圖片上傳applet處理類對待上傳圖片進行封裝,進而將待上傳圖片上傳到服務器上。這樣,在客戶端對觸發(fā)web頁面進行訪問過程中,每當客戶端上出現(xiàn)待上傳圖片時,待上傳圖片均能夠被自動上傳至服務器,整個過程均無需人工操作,保證用戶具有較好的體驗。
3、在本發(fā)明實施例提供的圖片上傳方法及裝置中,在將applet加載到客戶端上之后,由客戶端對applet進行編譯形成javaclass文件,并將javaclass文件嵌入到觸發(fā)web頁面中,以后每次客戶端訪問html文件代碼中包括applet標記的觸發(fā)web頁面時,applet都會隨著觸發(fā)web頁面加載到客戶端中進行運行。這樣,applet加載到客戶端后,下次再次調用時,無需重新從服務器加載,由于節(jié)省了從服務器重新下載applet的時間,從而可以提高圖片上傳的速率。
4、在本發(fā)明實施例提供的圖片上傳方法及裝置中,將獲取客戶端圖片數(shù)據(jù)相關代碼都封裝到imagesave.jar中,在獲取圖片上傳applet處理類時,只需要引入相應的jar包即可在頁面中使用,具有良好的易用性和兼容性,從而提高了本發(fā)明實施例所提供的圖片上傳方法的適用性。
5、在本發(fā)明實施例提供的圖片上傳方法及裝置中,httpurlconnection是一種多用途、輕量級的http客戶端,適用于大多數(shù)的應用程序,支持緩存功能,具有良好的易用性和擴展性,因此,調用圖片上傳applet處理類的圖片上傳方法創(chuàng)建httpurlconnection對象后,通過httpurlconnection對象對待上傳圖片進行封裝的方法,可以適用于各種格式的待上傳圖片以及各種類型的客戶端,進一步提高了該圖片上傳方法的適用性。
需要說明的是,在本文中,諸如第一和第二之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個······”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同因素。
本領域普通技術人員可以理解:實現(xiàn)上述方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成,前述的程序可以存儲在計算機可讀取的存儲介質中,該程序在執(zhí)行時,執(zhí)行包括上述方法實施例的步驟;而前述的存儲介質包括:rom、ram、磁碟或者光盤等各種可以存儲程序代碼的介質中。
最后需要說明的是:以上所述僅為本發(fā)明的較佳實施例,僅用于說明本發(fā)明的技術方案,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內所做的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內。