本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別涉及一種圖片存儲(chǔ)方法、服務(wù)端以及客戶端。
背景技術(shù):
圖片由于可以直觀地展現(xiàn)內(nèi)容,便于人員理解,因此在各個(gè)業(yè)務(wù)流程中,有些重要文件通常采用圖片的形式呈現(xiàn)。對于多分支機(jī)構(gòu)的企業(yè)來說,通常將各分支機(jī)構(gòu)中的圖片發(fā)送到同一個(gè)集中存儲(chǔ)服務(wù)器中,對圖片進(jìn)行集中存儲(chǔ),以方便統(tǒng)一管理。
目前,各個(gè)分支機(jī)構(gòu)需要更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的圖片時(shí),均需將自身中存儲(chǔ)的全部圖片發(fā)送至集中存儲(chǔ)服務(wù)器中,替換該分支機(jī)構(gòu)之前在集中存儲(chǔ)服務(wù)器存儲(chǔ)的全部圖片。
通過上述可知,各個(gè)分支機(jī)構(gòu)發(fā)送的為自身存儲(chǔ)的全部圖片,因此,現(xiàn)有的方式圖片更新的數(shù)據(jù)量較大。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提供了一種圖片存儲(chǔ)方法、服務(wù)端以及客戶端,可以降低圖片更新的數(shù)據(jù)量。
第一方面,本發(fā)明提供了一種圖片存儲(chǔ)方法,應(yīng)用于服務(wù)端,所述服務(wù)端與集中存儲(chǔ)服務(wù)器相連,還包括:
接收分支機(jī)構(gòu)的客戶端發(fā)送的圖片存儲(chǔ)請求,其中,所述圖片存儲(chǔ)請求中包括至少一個(gè)待存儲(chǔ)圖片的屬性信息;
根據(jù)所述圖片存儲(chǔ)請求中的所述至少一個(gè)待存儲(chǔ)圖片的屬性信息,確定所述集中存儲(chǔ)服務(wù)器中與所述至少一個(gè)待存儲(chǔ)圖片分別對應(yīng)的至少一個(gè)第一圖片;
確定每一個(gè)所述第一圖片的消息摘要算法第五版MD5值;
將各個(gè)所述第一圖片的MD5值發(fā)送至所述客戶端;
接收所述客戶端發(fā)送的目標(biāo)圖片;其中,所述目標(biāo)圖片包括:所述客戶端將接收到的所述第一圖片的MD5值與自身中對應(yīng)的所述至少一個(gè)待存儲(chǔ)圖片的MD5值進(jìn)行比較后,從所述至少一個(gè)待存儲(chǔ)圖片中確定的MD5值不匹配的圖片;
利用所述目標(biāo)圖片更新所述集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)于所述分支機(jī)構(gòu)的圖片。
優(yōu)選地,在所述接收分支機(jī)構(gòu)的客戶端發(fā)送的圖片存儲(chǔ)請求之前,進(jìn)一步包括:
通過預(yù)先設(shè)定的命名生成規(guī)則,為存儲(chǔ)在所述集中存儲(chǔ)服務(wù)器中的每一個(gè)圖片生成對應(yīng)的名稱,其中,所述命名生成規(guī)則包括:分支機(jī)構(gòu)編碼_業(yè)務(wù)單據(jù)編號_業(yè)務(wù)類型_環(huán)節(jié)名稱_序號.擴(kuò)展名。
優(yōu)選地,在所述為存儲(chǔ)在所述集中存儲(chǔ)服務(wù)器中的每一個(gè)圖片生成對應(yīng)的名稱之后,進(jìn)一步包括:
根據(jù)預(yù)先設(shè)定的路徑生成規(guī)則,生成至少一個(gè)存儲(chǔ)路徑,其中,所述路徑生成規(guī)則包括:/文件名稱/分支機(jī)構(gòu)編碼/應(yīng)用模塊名稱/;
針對每一個(gè)圖片均執(zhí)行:
根據(jù)該圖片對應(yīng)的名稱,在所述至少一個(gè)存儲(chǔ)路徑中確定該圖片對應(yīng)的存儲(chǔ)路徑,并將該圖片存儲(chǔ)在對應(yīng)的存儲(chǔ)路徑下。
優(yōu)選地,
所述屬性信息包括:環(huán)節(jié)名稱、業(yè)務(wù)單據(jù)編號、圖片大小、序號中的至少一種或多種,以及分支機(jī)構(gòu)編碼和業(yè)務(wù)類型;
所述根據(jù)所述圖片存儲(chǔ)請求中的所述至少一個(gè)待存儲(chǔ)圖片的屬性信息,確定所述集中存儲(chǔ)服務(wù)器中與所述至少一個(gè)待存儲(chǔ)圖片分別對應(yīng)的至少一個(gè)第一圖片,包括:
針對所述圖片存儲(chǔ)請求中的每一個(gè)待儲(chǔ)存圖片的屬性信息均執(zhí)行:
根據(jù)該待存儲(chǔ)圖片的屬性信息中的分支機(jī)構(gòu)編碼和業(yè)務(wù)類型,確定所述集中存儲(chǔ)服務(wù)器中與該待存儲(chǔ)圖片對應(yīng)的目標(biāo)存儲(chǔ)路徑;
根據(jù)該待存儲(chǔ)圖片的屬性信息中的環(huán)節(jié)名稱、業(yè)務(wù)單據(jù)編號、圖片大小、序號中的至少一種或多種,確定所述目標(biāo)存儲(chǔ)路徑中與該待存儲(chǔ)圖片對應(yīng)的第一圖片。
第二方面,本發(fā)明提供了一種圖片存儲(chǔ)方法,應(yīng)用于客戶端,所述客戶端部署于分支機(jī)構(gòu)中,包括:
發(fā)送圖片存儲(chǔ)請求至服務(wù)端,其中,所述圖片存儲(chǔ)請求中包括至少一個(gè)待存儲(chǔ)圖片的屬性信息;
確定至少一個(gè)所述待存儲(chǔ)圖片中每一個(gè)所述待存儲(chǔ)圖片的MD5值;
接收所述服務(wù)端發(fā)送的至少一個(gè)第一圖片的MD5值;
將所述至少一個(gè)第一圖片的MD5值與對應(yīng)的所述待存儲(chǔ)圖片的MD5值進(jìn)行比較;
將所述至少一個(gè)待存儲(chǔ)圖片中確定的MD5值不匹配的圖片,確定為目標(biāo)圖片;
在所述分支機(jī)構(gòu)中獲取所述目標(biāo)圖片,將所述目標(biāo)圖片發(fā)送至所述服務(wù)端。
優(yōu)選地,在所述發(fā)送圖片存儲(chǔ)請求至服務(wù)端之前,進(jìn)一步包括:
在當(dāng)前時(shí)間達(dá)到預(yù)先設(shè)定的發(fā)送時(shí)間點(diǎn)時(shí),發(fā)送圖片存儲(chǔ)請求至所述服務(wù)端。
第三方面,本發(fā)明提供了一種服務(wù)端,包括:
接收單元,用于接收分支機(jī)構(gòu)的客戶端發(fā)送的圖片存儲(chǔ)請求,其中,所述圖片存儲(chǔ)請求中包括至少一個(gè)待存儲(chǔ)圖片的屬性信息;
確定單元,用于根據(jù)所述圖片存儲(chǔ)請求中的所述至少一個(gè)待存儲(chǔ)圖片的屬性信息,確定連接的集中存儲(chǔ)服務(wù)器中與所述至少一個(gè)待存儲(chǔ)圖片分別對應(yīng)的至少一個(gè)第一圖片;確定每一個(gè)所述第一圖片的MD5值;
發(fā)送單元,用于將各個(gè)所述第一圖片的MD5值發(fā)送至所述客戶端;
目標(biāo)圖片接收單元,用于接收所述客戶端發(fā)送的目標(biāo)圖片;其中,所述目標(biāo)圖片包括:所述客戶端將接收到的所述第一圖片的MD5值與自身中對應(yīng)的所述至少一個(gè)待存儲(chǔ)圖片的MD5值進(jìn)行比較后,從所述至少一個(gè)待存儲(chǔ)圖片中確定的MD5值不匹配的圖片;
更新單元,用于利用所述目標(biāo)圖片更新所述集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)于所述分支機(jī)構(gòu)的圖片。
優(yōu)選地,進(jìn)一步包括:命名單元;
所述命名單元單元,用于通過預(yù)先設(shè)定的命名生成規(guī)則,為存儲(chǔ)在所述集中存儲(chǔ)服務(wù)器中的每一個(gè)圖片生成對應(yīng)的名稱,其中,所述命名生成規(guī)則包括:分支機(jī)構(gòu)編碼_業(yè)務(wù)單據(jù)編號_業(yè)務(wù)類型_環(huán)節(jié)名稱_序號.擴(kuò)展名。
優(yōu)選地,
進(jìn)一步包括:生成單元和存儲(chǔ)單元;
所述生成單元,根據(jù)預(yù)先設(shè)定的路徑生成規(guī)則,生成至少一個(gè)存儲(chǔ)路徑,其中,所述路徑生成規(guī)則,包括:/文件名稱/分支機(jī)構(gòu)編碼/應(yīng)用模塊名稱/;
所述存儲(chǔ)單元,用于針對每一個(gè)圖片均執(zhí)行:根據(jù)該圖片對應(yīng)的名稱,在所述至少一個(gè)存儲(chǔ)路徑中確定該圖片對應(yīng)的存儲(chǔ)路徑,并將該圖片儲(chǔ)存在對應(yīng)的存儲(chǔ)路徑下。
優(yōu)選地,
所述屬性信息包括:環(huán)節(jié)名稱、業(yè)務(wù)單據(jù)編號、業(yè)務(wù)類型、圖片大小、序號中的至少一種或多種,以及分支機(jī)構(gòu)編碼和業(yè)務(wù)類型;
所述確定單元,用于針對所述圖片存儲(chǔ)請求中的每一個(gè)待儲(chǔ)存圖片的屬性信息均執(zhí)行:根據(jù)該待存儲(chǔ)圖片的屬性信息中的分支機(jī)構(gòu)編碼和業(yè)務(wù)類型,確定所述集中存儲(chǔ)服務(wù)器中與該待存儲(chǔ)圖片對應(yīng)的目標(biāo)存儲(chǔ)路徑;根據(jù)該待存儲(chǔ)圖片的屬性信息中的環(huán)節(jié)名稱、業(yè)務(wù)單據(jù)編號、圖片大小、序號中的至少一種或多種,確定所述目標(biāo)存儲(chǔ)路徑中與該待存儲(chǔ)圖片對應(yīng)的第一圖片。
第四方面,本發(fā)明提供了一種客戶端,包括:
請求發(fā)送單元,用于發(fā)送圖片存儲(chǔ)請求至服務(wù)端,其中,所述圖片存儲(chǔ)請求中包括至少一個(gè)待存儲(chǔ)圖片的屬性信息;
MD5值確定單元,用于確定至少一個(gè)所述待存儲(chǔ)圖片中每一個(gè)所述待存儲(chǔ)圖片的MD5值;
MD5值接收單元,用于接收所述服務(wù)端發(fā)送的至少一個(gè)第一圖片的MD5值;
目標(biāo)圖片確定單元,用于將所述至少一個(gè)第一圖片的MD5值與對應(yīng)的所述待存儲(chǔ)圖片的MD5值進(jìn)行比較;將所述至少一個(gè)待存儲(chǔ)圖片中確定的MD5值不匹配的圖片,確定為目標(biāo)圖片;
獲取和發(fā)送單元,用于在所述分支機(jī)構(gòu)中獲取所述目標(biāo)圖片,將所述目標(biāo)圖片發(fā)送至所述服務(wù)端。
優(yōu)選地,進(jìn)一步包括:觸發(fā)單元;
觸發(fā)單元,用于在當(dāng)前時(shí)間達(dá)到預(yù)先設(shè)定的發(fā)送時(shí)間點(diǎn)時(shí),觸發(fā)所述請求發(fā)送單元發(fā)送圖片存儲(chǔ)請求至所述服務(wù)端。
本發(fā)明實(shí)施例提供了一種圖片存儲(chǔ)方法及裝置,對于應(yīng)用于服務(wù)端的圖片存儲(chǔ)方法包括:服務(wù)端根據(jù)圖片存儲(chǔ)請求中的待存儲(chǔ)圖片的屬性信息,確定與其相連的集中存儲(chǔ)服務(wù)器中,與待存儲(chǔ)圖片分別對應(yīng)的第一圖片。然后確定每一個(gè)第一圖片的MD5值,再將各個(gè)第一圖片的MD5值發(fā)送至客戶端,以使客戶端在待存儲(chǔ)圖中將與各個(gè)第一圖片的MD5值不匹配的圖片確定為目標(biāo)圖片。然后僅利用客戶端發(fā)送的目標(biāo)圖片更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)于客戶端所在分支機(jī)構(gòu)的圖片。通過上述過程可知,本方案中僅利用與第一圖片的MD5值不匹配的目標(biāo)圖片,更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)分支機(jī)構(gòu)的圖片,因此,本方案可以降低圖片更新的數(shù)據(jù)量。
附圖說明
為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1是本發(fā)明一個(gè)實(shí)施例提供的一種應(yīng)用于服務(wù)端的圖片存儲(chǔ)方法的流程圖;
圖2是本發(fā)明一個(gè)實(shí)施例提供的一種應(yīng)用于客戶端的圖片存儲(chǔ)方法的流程圖;
圖3是本發(fā)明一個(gè)實(shí)施例提供的一種圖片存儲(chǔ)方法的流程圖;
圖4是本發(fā)明一個(gè)實(shí)施例提供的一種圖片的存儲(chǔ)路徑關(guān)系示意圖;
圖5是本發(fā)明一個(gè)實(shí)施例提供的一種服務(wù)端的結(jié)構(gòu)示意圖;
圖6是本發(fā)明一個(gè)實(shí)施例提供的一種包括命名單元的服務(wù)端的結(jié)構(gòu)示意圖;
圖7是本發(fā)明一個(gè)實(shí)施例提供的一種包括生成單元和存儲(chǔ)單元的服務(wù)端的結(jié)構(gòu)示意圖;
圖8是本發(fā)明一個(gè)實(shí)施例提供的一種客戶端的結(jié)構(gòu)示意圖;
圖9是本發(fā)明一個(gè)實(shí)施例提供的一種包括觸發(fā)單元的客戶端的結(jié)構(gòu)示意圖。
具體實(shí)施方式
為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例,基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動(dòng)的前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
如圖1所示,本發(fā)明實(shí)施例提供了一種圖片存儲(chǔ)方法,應(yīng)用于服務(wù)端,該方法可以包括以下步驟:
步驟101:將所述服務(wù)端與集中存儲(chǔ)服務(wù)器相連;
步驟102:接收分支機(jī)構(gòu)的客戶端發(fā)送的圖片存儲(chǔ)請求,其中,所述圖片存儲(chǔ)請求中包括至少一個(gè)待存儲(chǔ)圖片的屬性信息;
步驟103:根據(jù)所述圖片存儲(chǔ)請求中的所述至少一個(gè)待存儲(chǔ)圖片的屬性信息,確定所述集中存儲(chǔ)服務(wù)器中與所述至少一個(gè)待存儲(chǔ)圖片分別對應(yīng)的至少一個(gè)第一圖片;
步驟104:確定每一個(gè)所述第一圖片的MD5值;
步驟105:將各個(gè)所述第一圖片的MD5值發(fā)送至所述客戶端;
步驟106:接收所述客戶端發(fā)送的目標(biāo)圖片;其中,所述目標(biāo)圖片包括:所述客戶端將接收到的所述第一圖片的MD5值與自身中對應(yīng)的所述至少一個(gè)待存儲(chǔ)圖片的MD5值進(jìn)行比較后,從所述至少一個(gè)待存儲(chǔ)圖片中確定的MD5值不匹配的圖片;
步驟107:利用所述目標(biāo)圖片更新所述集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)于所述分支機(jī)構(gòu)的圖片。
根據(jù)如圖1所述的實(shí)施例,對于應(yīng)用于服務(wù)端的圖片存儲(chǔ)方法包括:服務(wù)端根據(jù)圖片存儲(chǔ)請求中的待存儲(chǔ)圖片的屬性信息,確定與其相連的集中存儲(chǔ)服務(wù)器中,與待存儲(chǔ)圖片分別對應(yīng)的第一圖片。然后確定每一個(gè)第一圖片的MD5值,再將各個(gè)第一圖片的MD5值發(fā)送至客戶端,以使客戶端在待存儲(chǔ)圖中將與各個(gè)第一圖片的MD5值不匹配的圖片確定為目標(biāo)圖片。然后僅利用客戶端發(fā)送的目標(biāo)圖片更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)于客戶端所在分支機(jī)構(gòu)的圖片。通過上述過程可知,本方案中利用與第一圖片的MD5值不匹配的目標(biāo)圖片,僅更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)分支機(jī)構(gòu)的圖片,因此,本發(fā)明實(shí)施例可以降低圖片更新的數(shù)據(jù)量。
在本發(fā)明一個(gè)實(shí)施例中,在上述圖1所示過程中,在步驟102接收分支機(jī)構(gòu)的客戶端發(fā)送的圖片存儲(chǔ)請求之前,可以進(jìn)一步包括:
通過預(yù)先設(shè)定的命名生成規(guī)則,為存儲(chǔ)在所述集中存儲(chǔ)服務(wù)器中的每一個(gè)圖片生成對應(yīng)的名稱,其中,所述命名生成規(guī)則包括:分支機(jī)構(gòu)編碼_業(yè)務(wù)單據(jù)編號_業(yè)務(wù)類型_環(huán)節(jié)名稱_序號.擴(kuò)展名。
在本實(shí)施例中,由于與服務(wù)端相連的集中存儲(chǔ)服務(wù)器中可能存儲(chǔ)至少一個(gè)分支機(jī)構(gòu)的圖片。為了區(qū)分每一個(gè)分支機(jī)構(gòu)對應(yīng)的各個(gè)圖片,服務(wù)端可以根據(jù)設(shè)定的命名生成規(guī)則為集中存儲(chǔ)服務(wù)器中存儲(chǔ)的每一個(gè)圖片生成對應(yīng)的名稱。其中,為了使服務(wù)端能夠區(qū)分出是哪個(gè)分支機(jī)構(gòu)的客戶端發(fā)送的圖片存儲(chǔ)請求,每一個(gè)分支機(jī)構(gòu)的客戶端均要具有自身唯一的編碼。該分支機(jī)構(gòu)的編碼可以根據(jù)具體的業(yè)務(wù)要求確定。比如,編碼可以英文字母SA開頭,后面加13位數(shù)字構(gòu)成。如分支機(jī)構(gòu)1的客戶端的編碼為SA0000000000001;分支機(jī)構(gòu)2的客戶端的編碼為SA0000000000002。
在本實(shí)施例中,預(yù)先設(shè)定的命名生成規(guī)則可以根據(jù)具體的業(yè)務(wù)要求確定,該命名生成規(guī)則中包括:分支機(jī)構(gòu)編碼_業(yè)務(wù)單據(jù)編號_業(yè)務(wù)類型_環(huán)節(jié)名稱_序號.擴(kuò)展名只是一種優(yōu)選方式,還可以根據(jù)業(yè)務(wù)要求選用其他的命名生成規(guī)則。
在本實(shí)施例中,比如,存儲(chǔ)的圖片1對應(yīng)的分支機(jī)構(gòu)的編碼為SA0000000000001,業(yè)務(wù)單據(jù)編號為b1881、業(yè)務(wù)類型為銀行卡對應(yīng)編號為1、環(huán)節(jié)名稱為提交對應(yīng)編號為1、序號為3、擴(kuò)展名為jpg,則根據(jù)命名生成規(guī)則:分支機(jī)構(gòu)編碼_業(yè)務(wù)單據(jù)編號_業(yè)務(wù)類型_環(huán)節(jié)名稱_序號.擴(kuò)展名,生成的圖片1對應(yīng)的名稱為SA0000000000007_b1881_1_1_3.jpg
根據(jù)上述實(shí)施例,服務(wù)端可以根據(jù)預(yù)先設(shè)定的命名生成規(guī)則,為存儲(chǔ)在集中存儲(chǔ)服務(wù)器中的每一個(gè)圖片生成對應(yīng)的名稱。因此當(dāng)服務(wù)端在集中服務(wù)器中查詢圖片時(shí),可以根據(jù)圖片的名稱快速的鎖定圖片。
在本發(fā)明一個(gè)實(shí)施例中,在所述為存儲(chǔ)在所述集中存儲(chǔ)服務(wù)器中的每一個(gè)圖片生成對應(yīng)的名稱之后,可以進(jìn)一步包括:
根據(jù)預(yù)先設(shè)定的路徑生成規(guī)則,生成至少一個(gè)存儲(chǔ)路徑,其中,所述路徑生成規(guī)則包括:/文件名稱/分支機(jī)構(gòu)編碼/應(yīng)用模塊名稱/;
針對每一個(gè)圖片均執(zhí)行:
根據(jù)該圖片對應(yīng)的名稱,在所述至少一個(gè)存儲(chǔ)路徑中確定該圖片對應(yīng)的存儲(chǔ)路徑,并將該圖片存儲(chǔ)在對應(yīng)的存儲(chǔ)路徑下。
在本實(shí)施例中,由于與服務(wù)端相連的集中存儲(chǔ)服務(wù)器中可能存儲(chǔ)一個(gè)分支機(jī)構(gòu)中至少一個(gè)應(yīng)用模塊中的至少一個(gè)圖片。如果該分支機(jī)構(gòu)中所有的圖片均存儲(chǔ)在一個(gè)存儲(chǔ)路徑下,當(dāng)服務(wù)端在集中服務(wù)器中查詢該分支機(jī)構(gòu)中的一個(gè)圖片時(shí),就需要在全部的圖片中查詢,因此鎖定該圖片的時(shí)間較長。因此分支機(jī)構(gòu)中的每一個(gè)應(yīng)用模塊對應(yīng)的圖片具需具有自身對應(yīng)的存儲(chǔ)路徑。
在本實(shí)施例中,路徑生成規(guī)則可以根據(jù)具體的業(yè)務(wù)要求確定,路徑生成規(guī)則中包括:/文件名稱/分支機(jī)構(gòu)編碼/應(yīng)用模塊名稱/只是一種優(yōu)選方式,還可以根據(jù)業(yè)務(wù)要求選用其他的路徑生成規(guī)則。比如在應(yīng)用模塊名稱后可以繼續(xù)增加分支路徑,比如:/文件名稱/分支機(jī)構(gòu)編碼/應(yīng)用模塊名稱/日期/。
在本實(shí)施例中,比如,文件名稱可以為attachment、分支機(jī)構(gòu)1的編碼為SA0000000000001、應(yīng)用模塊名稱為銀行卡業(yè)務(wù),那么生成的存儲(chǔ)路徑為:/attachment/SA0000000000001/銀行卡業(yè)務(wù)/。比如文件名稱可以為attachment、分支機(jī)構(gòu)1的編碼為SA0000000000001、應(yīng)用模塊名稱為信用卡業(yè)務(wù),那么生成的存儲(chǔ)路徑為:/attachment/SA0000000000001/信用卡業(yè)務(wù)/。
在本實(shí)施例中,當(dāng)生成至少一個(gè)存儲(chǔ)路徑之后,針對于每一個(gè)圖片均執(zhí)行:根據(jù)該圖片對應(yīng)的名稱,在生成地至少一個(gè)存儲(chǔ)路徑中確定該圖片對應(yīng)的存儲(chǔ)路徑,并將該圖片存儲(chǔ)在對應(yīng)的存儲(chǔ)路徑下。比如,生成的存儲(chǔ)路徑為存儲(chǔ)路徑1:/attachment/SA0000000000001/銀行卡業(yè)務(wù)/和存儲(chǔ)路徑2:/attachment/SA0000000000001/信用卡業(yè)務(wù)/。存在圖片1:SA0000000000001_b1881_1_1_3.jpg和圖片2:SA0000000000001_9745a_1_1_2.jpg。那么根據(jù)圖片1和圖片2的名稱與存儲(chǔ)路徑1和存儲(chǔ)路徑2比對,該比對過程主要為確定圖片名稱中的分支機(jī)構(gòu)編碼和業(yè)務(wù)類型對應(yīng)的存儲(chǔ)路徑,在本實(shí)施例中,確定與圖片1和圖片2對應(yīng)的存儲(chǔ)路徑1:/attachment/SA0000000000001/銀行卡業(yè)務(wù)/,則將圖片1和圖片2存儲(chǔ)在存儲(chǔ)路徑1下。
根據(jù)上述實(shí)施例,通過設(shè)定的路徑生成規(guī)則,生成至少一個(gè)存儲(chǔ)路徑,并根據(jù)每一張圖片對應(yīng)的名稱,將該圖片存儲(chǔ)在與其對應(yīng)的存儲(chǔ)路徑下,以便當(dāng)服務(wù)端在集中存儲(chǔ)服務(wù)器中查詢圖片時(shí),可以根據(jù)該圖片的存儲(chǔ)路徑,直接到存儲(chǔ)該圖片的存儲(chǔ)路徑下查詢圖片,因此可以縮短查詢圖片的時(shí)間。
在本發(fā)明一個(gè)實(shí)施例中,圖1所示流程中所涉及的屬性信息包括:環(huán)節(jié)名稱、業(yè)務(wù)單據(jù)編號、圖片大小、序號中的至少一種或多種,以及分支機(jī)構(gòu)編碼和業(yè)務(wù)類型;
則步驟103根據(jù)所述圖片存儲(chǔ)請求中的所述至少一個(gè)待存儲(chǔ)圖片的屬性信息,確定所述集中存儲(chǔ)服務(wù)器中與所述至少一個(gè)待存儲(chǔ)圖片分別對應(yīng)的至少一個(gè)第一圖片,可以包括:
針對所述圖片存儲(chǔ)請求中的每一個(gè)待儲(chǔ)存圖片的屬性信息均執(zhí)行:
根據(jù)該待存儲(chǔ)圖片的屬性信息中的分支機(jī)構(gòu)編碼和業(yè)務(wù)類型,確定所述集中存儲(chǔ)服務(wù)器中與該待存儲(chǔ)圖片對應(yīng)的目標(biāo)存儲(chǔ)路徑;
根據(jù)該待存儲(chǔ)圖片的屬性信息中的環(huán)節(jié)名稱、業(yè)務(wù)單據(jù)編號、圖片大小、序號中的至少一種或多種,確定所述目標(biāo)存儲(chǔ)路徑中與該待存儲(chǔ)圖片對應(yīng)的第一圖片。
在本實(shí)施例中,待存儲(chǔ)圖片的屬性信息包括的內(nèi)容可以根據(jù)具體的業(yè)務(wù)要求確定,屬性信息包括:環(huán)節(jié)名稱、業(yè)務(wù)單據(jù)編號、圖片大小、序號中的至少一種或多種,以及分支機(jī)構(gòu)編碼和業(yè)務(wù)類型只是一種優(yōu)選方式,還可以根據(jù)業(yè)務(wù)要求添加其他的內(nèi)容。
在本實(shí)施例中,對于至少一個(gè)待存儲(chǔ)圖片中的每一個(gè)待存儲(chǔ)圖片,待存儲(chǔ)圖片可能在集中存儲(chǔ)服務(wù)器中存在對應(yīng)的第一圖片,也可能在集中存儲(chǔ)服務(wù)器中不存在對應(yīng)的第一圖片。
比如,集中存儲(chǔ)服務(wù)器中,在存儲(chǔ)路徑:/attachment/SA0000000000001/銀行卡業(yè)務(wù)/中,存儲(chǔ)了圖片1:SA0000000000001_b1881b_1_1_2.jpg。當(dāng)存在待儲(chǔ)存圖片1和待存儲(chǔ)圖片2,待存儲(chǔ)圖片1的屬性信息均包括:環(huán)節(jié)名稱1、業(yè)務(wù)單據(jù)編號b1881、圖片大小3.3MB、序號2以及分支機(jī)構(gòu)編碼SA0000000000001和業(yè)務(wù)類型銀行卡業(yè)務(wù)。待存儲(chǔ)圖片2的屬性信息均包括:環(huán)節(jié)名稱1、業(yè)務(wù)單據(jù)編號9745a、圖片大小3.3MB、序號2以及分支機(jī)構(gòu)編碼SA0000000000001和業(yè)務(wù)類型信用卡業(yè)務(wù)。
對于待存儲(chǔ)圖片1的屬性信息中的分支機(jī)構(gòu)編碼SA0000000000001和業(yè)務(wù)類型銀行卡業(yè)務(wù)在確定集中存儲(chǔ)服務(wù)器中與該待存儲(chǔ)圖片1的分支機(jī)構(gòu)編碼和業(yè)務(wù)單據(jù)編號對應(yīng)的目標(biāo)存儲(chǔ)路徑/attachment/SA0000000000001/銀行卡業(yè)務(wù)/;根據(jù)該待存儲(chǔ)圖片的屬性信息中的環(huán)節(jié)名稱1、業(yè)務(wù)單據(jù)編號9745a、圖片大小3.3MB、序號2,確定目標(biāo)存儲(chǔ)路徑中/attachment/SA0000000000001/銀行卡業(yè)務(wù)/中存在與該待存儲(chǔ)圖片1對應(yīng)的第一圖片SA0000000000001_b1881b_1_1_2.jpg。
對于待存儲(chǔ)圖片2的屬性信息中的分支機(jī)構(gòu)編碼SA0000000000001和業(yè)務(wù)類型信用卡業(yè)務(wù)在確定集中存儲(chǔ)服務(wù)器中對應(yīng)的目標(biāo)存儲(chǔ)路徑/attachment/SA0000000000001/信用卡業(yè)務(wù)/;根據(jù)該待存儲(chǔ)圖片的屬性信息中的環(huán)節(jié)名稱1、業(yè)務(wù)單據(jù)編號9745a、圖片大小3.3MB、序號2,確定目標(biāo)存儲(chǔ)路徑中/attachment/SA0000000000001/信用卡業(yè)務(wù)/中不存在與該待存儲(chǔ)圖片2對應(yīng)的第一圖片。
根據(jù)上述實(shí)施例,可以根據(jù)待存儲(chǔ)圖片的屬性信息在集中存儲(chǔ)服務(wù)器中確定與其對應(yīng)的目標(biāo)存儲(chǔ)路徑,然后在目標(biāo)存儲(chǔ)路徑中確定與其對應(yīng)的第一圖片,由于是根據(jù)待存儲(chǔ)圖片的屬性信息進(jìn)行確定的,因此提高了第一圖片與待存儲(chǔ)圖片匹配的概率。
在本發(fā)明一個(gè)實(shí)施例中,每一個(gè)第一圖片的MD5值均可以通過MD5值的通用算法進(jìn)行計(jì)算。
如圖2所示,本發(fā)明實(shí)施例提供了一種圖片存儲(chǔ)方法,應(yīng)用于客戶端,該方法可以包括以下步驟:
步驟201:將客戶端部署于分支機(jī)構(gòu)中;
步驟202:發(fā)送圖片存儲(chǔ)請求至服務(wù)端,其中,所述圖片存儲(chǔ)請求中包括至少一個(gè)待存儲(chǔ)圖片的屬性信息;
步驟203:確定至少一個(gè)所述待存儲(chǔ)圖片中每一個(gè)所述待存儲(chǔ)圖片的MD5值;
步驟204:接收所述服務(wù)端發(fā)送的至少一個(gè)第一圖片的MD5值;
步驟205:將所述至少一個(gè)第一圖片的MD5值與對應(yīng)的所述待存儲(chǔ)圖片的MD5值進(jìn)行比較;
步驟206:將所述至少一個(gè)待存儲(chǔ)圖片中確定的MD5值不匹配的圖片,確定為目標(biāo)圖片;
步驟207:在所述分支機(jī)構(gòu)中獲取所述目標(biāo)圖片,將所述目標(biāo)圖片發(fā)送至所述服務(wù)端。
根據(jù)如圖2所示的實(shí)施例,對于應(yīng)用于客戶端的圖片存儲(chǔ)方法包括:客戶端接收服務(wù)端根據(jù)圖片存儲(chǔ)請求確定的各個(gè)第一圖片的MD5值,然后將確定的各個(gè)待存儲(chǔ)圖片的M D5值與對應(yīng)的第一圖片的MD5值進(jìn)行比較。通過比較將待存儲(chǔ)圖片中MD5值不匹配的圖片確定為目標(biāo)圖片,然后將目標(biāo)圖片發(fā)送給服務(wù)端,以使服務(wù)端利用目標(biāo)圖片更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)于客戶端所在分支機(jī)構(gòu)的圖片。通過上述過程可知,客戶端將待存儲(chǔ)圖片中與第一圖片的MD5值不匹配的圖片,確定為目標(biāo)圖片。僅將目標(biāo)圖片發(fā)送給客戶端,而不用將所有圖片發(fā)送給客戶端,因此本發(fā)明實(shí)施例可以降低圖片更新的數(shù)據(jù)量。
在本發(fā)明一個(gè)實(shí)施例中,目標(biāo)圖片的確定存在以下兩種情況:
情況一:待存儲(chǔ)圖片的MD5值在至少一個(gè)第一圖片的MD5值中不存在,則將該待存儲(chǔ)圖片確定為目標(biāo)圖片;
情況二:待存儲(chǔ)圖片的MD5值在與對應(yīng)的第一圖片的MD5值不一致,則將該待存儲(chǔ)圖片確定為目標(biāo)圖片。
在本實(shí)施例中,比如,存在待存儲(chǔ)圖片1、待存儲(chǔ)圖片2和待存儲(chǔ)圖片3,接收到第一圖片1的MD5值和第一圖片2的MD5值。在將各個(gè)第一圖片的MD5值與對應(yīng)的待存儲(chǔ)圖片的MD5值進(jìn)行比較時(shí),可以看出待存儲(chǔ)圖片3在接收到的第一圖片的MD5值中不存在,則確定待存儲(chǔ)圖片3為目標(biāo)圖片。比如,在將各個(gè)第一圖片的MD5值與對應(yīng)的待存儲(chǔ)圖片的MD5值進(jìn)行比較時(shí),待存儲(chǔ)圖片1的MD5值與對應(yīng)的第一圖片1的MD5值不一致,則確定待存儲(chǔ)圖片1為目標(biāo)圖片。
在本發(fā)明一個(gè)實(shí)施例中,在上述圖2所示過程中,在步驟202發(fā)送圖片存儲(chǔ)請求至服務(wù)端之前,可以進(jìn)一步包括:
在當(dāng)前時(shí)間達(dá)到預(yù)先設(shè)定的發(fā)送時(shí)間點(diǎn)時(shí),發(fā)送圖片存儲(chǔ)請求至所述服務(wù)端。
在本實(shí)施例中,預(yù)先設(shè)定的發(fā)送時(shí)間點(diǎn)可以具體的業(yè)務(wù)要求確定,為了考慮服務(wù)端和客戶端的操作不影響分支機(jī)構(gòu)正常工作時(shí)間的業(yè)務(wù)操作,可以將發(fā)送的時(shí)間點(diǎn)設(shè)定在凌晨的2點(diǎn)到4點(diǎn)之間。
在本實(shí)施例中,比如,設(shè)定的發(fā)送時(shí)間點(diǎn)為凌晨2點(diǎn),在當(dāng)前時(shí)間達(dá)到凌晨2點(diǎn)時(shí),發(fā)送圖片存儲(chǔ)請求至服務(wù)端。
下面以服務(wù)端與集中存儲(chǔ)服務(wù)器用于存儲(chǔ)分支機(jī)構(gòu)1和分支機(jī)構(gòu)2中的圖片,且在分支機(jī)構(gòu)1和分支機(jī)構(gòu)2中分別部署了客戶端為例。展開說明圖片存儲(chǔ)方法,如圖3所示,該圖片存儲(chǔ)方法可以包括如下步驟:
步驟301:將服務(wù)端與集中服務(wù)器相連,將客戶端1部署于分支機(jī)構(gòu)1中,將客戶端2部署于分支機(jī)構(gòu)2中。
步驟302:服務(wù)端預(yù)先設(shè)定的命名生成規(guī)則、路徑生成規(guī)則和MD5值的算法以及客戶端預(yù)先設(shè)定發(fā)送時(shí)間點(diǎn)和MD5值的算法。
在本步驟中,服務(wù)端設(shè)定的命名生成規(guī)則包括:分支機(jī)構(gòu)編碼_業(yè)務(wù)單據(jù)編號_業(yè)務(wù)類型_環(huán)節(jié)名稱_序號.擴(kuò)展名;設(shè)定的路徑生成規(guī)則包括:/文件名稱/分支機(jī)構(gòu)編碼/應(yīng)用模塊名稱/;根據(jù)業(yè)務(wù)要求選用通用的MD5值算法
客戶端設(shè)定的發(fā)送時(shí)間點(diǎn)為凌晨2點(diǎn);根據(jù)業(yè)務(wù)要求選用通用的MD5值算法。
步驟303:服務(wù)端通過預(yù)先設(shè)定的命名生成規(guī)則,為存儲(chǔ)在集中存儲(chǔ)服務(wù)器中的每一個(gè)圖片生成對應(yīng)的名稱。
在本步驟中,存儲(chǔ)在集中存儲(chǔ)服務(wù)器中的圖片有圖片1、圖片2和圖片3。其中,圖片1對應(yīng)的分支機(jī)構(gòu)的編碼為SA0000000000001,業(yè)務(wù)單據(jù)編號為b1881b、業(yè)務(wù)類型為銀行卡對應(yīng)編號為1、環(huán)節(jié)名稱為提交對應(yīng)編號為1、序號為3、擴(kuò)展名為jpg;圖片2對應(yīng)的分支機(jī)構(gòu)的編碼為SA0000000000001,業(yè)務(wù)單據(jù)編號為b1881b、業(yè)務(wù)類型為銀行卡對應(yīng)編號為1、環(huán)節(jié)名稱為提交對應(yīng)編號為1、序號為16、擴(kuò)展名為jpg;圖片3對應(yīng)的分支機(jī)構(gòu)的編碼為SA0000000000002,業(yè)務(wù)單據(jù)編號為874e5e、業(yè)務(wù)類型為信用卡對應(yīng)編號為2、環(huán)節(jié)名稱為提交對應(yīng)編號為1、序號為16、擴(kuò)展名為jpg。
根據(jù)步驟301中預(yù)先設(shè)定的命名生成規(guī)則生成的規(guī)則,生成圖片1的名稱為SA0000000000001_b1881b_1_1_3.jpg;圖片2的名稱為SA0000000000001_b1881b_1_1_16.jpg;圖片3的名稱為SA0000000000002_874e5e_2_1_16.jpg。
步驟304:服務(wù)端根據(jù)預(yù)先設(shè)定的路徑生成規(guī)則,生成至少一個(gè)存儲(chǔ)路徑。
在本步驟中,服務(wù)端根據(jù)步驟301中設(shè)定的路徑生成規(guī)則,生成2個(gè)存儲(chǔ)路徑,存儲(chǔ)路徑分別為:存儲(chǔ)路徑1:/attachment/SA0000000000001/銀行卡業(yè)務(wù)/;存儲(chǔ)路徑2:/attachment/SA0000000000002/信用卡業(yè)務(wù)/。
步驟305:服務(wù)端針對每一個(gè)圖片均執(zhí)行:根據(jù)該圖片對應(yīng)的名稱,在至少一個(gè)存儲(chǔ)路徑中確定該圖片對應(yīng)的存儲(chǔ)路徑,并將該圖片存儲(chǔ)在對應(yīng)的存儲(chǔ)路徑下。
在本步驟中,針對于圖片1執(zhí)行:根據(jù)圖片1對應(yīng)的名稱SA0000000000001_b1881b_1_1_3.jpg,由于名稱中可以體現(xiàn)圖片1對應(yīng)的業(yè)務(wù)類型為銀行卡業(yè)務(wù),因此將圖片1存儲(chǔ)在存儲(chǔ)路徑:/attachment/SA0000000000001/銀行卡業(yè)務(wù)/中;
針對于圖片2執(zhí)行:根據(jù)圖片2對應(yīng)的名稱SA0000000000001_b1881b_1_1_16.jpg,由于名稱中可以體現(xiàn)圖片2對應(yīng)分支機(jī)構(gòu)編碼以及對應(yīng)的業(yè)務(wù)類型為銀行卡業(yè)務(wù),因此將圖片2存儲(chǔ)在存儲(chǔ)路徑:/attachment/SA0000000000001/銀行卡業(yè)務(wù)/中;
針對于圖片3執(zhí)行:根據(jù)圖片3對應(yīng)的名稱SA0000000000002_874e5e_2_1_16.jpg,由于名稱中可以體現(xiàn)圖片3對應(yīng)分支機(jī)構(gòu)編碼以及對應(yīng)的業(yè)務(wù)類型為信用卡業(yè)務(wù),因此將圖片3存儲(chǔ)在存儲(chǔ)路徑:/attachment/SA0000000000002/信用卡業(yè)務(wù)/中。
在本步驟中確定的圖片的存儲(chǔ)路徑關(guān)系示意圖,如圖4所示。
步驟306:客戶端在當(dāng)前時(shí)間達(dá)到預(yù)先設(shè)定的發(fā)送時(shí)間點(diǎn)時(shí),發(fā)送包括至少一個(gè)待存儲(chǔ)圖片的屬性信息的圖片存儲(chǔ)請求至服務(wù)端。
在本步驟中,客戶端在確定當(dāng)前的時(shí)間達(dá)到步驟302中設(shè)定的發(fā)送時(shí)間點(diǎn)凌晨兩點(diǎn)時(shí),發(fā)送圖片存儲(chǔ)請求至服務(wù)端。其中,圖片存儲(chǔ)請求中包括:兩個(gè)待存儲(chǔ)圖片的屬性信息,分別為:
待存儲(chǔ)圖片1的屬性信息包括:環(huán)節(jié)名稱對應(yīng)編號為1、業(yè)務(wù)單據(jù)編號b1881b、圖片大小3.3MB、序號3,以及分支機(jī)構(gòu)編碼SA0000000000001和業(yè)務(wù)類型為銀行卡;
待存儲(chǔ)圖片2的屬性信息包括:環(huán)節(jié)名稱對應(yīng)編號為1、業(yè)務(wù)單據(jù)編號b1882c、圖片大小4.3MB、序號5,以及分支機(jī)構(gòu)編碼SA0000000000001和業(yè)務(wù)類型為銀行卡。
步驟307:客戶端確定至少一個(gè)待存儲(chǔ)圖片中每一個(gè)待存儲(chǔ)圖片的MD5值。
在本步驟中,客戶端利用步驟302中設(shè)定的通用算法MD5確定待存儲(chǔ)圖片1和待存儲(chǔ)圖片2的MD5值。比如,待存儲(chǔ)圖片1的MD5值為A,待存儲(chǔ)圖片2的MD5值為B。
步驟308:服務(wù)端接收分支機(jī)構(gòu)的客戶端發(fā)送的圖片存儲(chǔ)請求。
在本步驟中,服務(wù)端接收的圖片請求中包括:待存儲(chǔ)圖片1和待存儲(chǔ)圖片2的屬性信息。
步驟309:服務(wù)端針對圖片存儲(chǔ)請求中的每一個(gè)待儲(chǔ)存圖片的屬性信息均執(zhí)行:根據(jù)該待存儲(chǔ)圖片的屬性信息中的分支機(jī)構(gòu)編碼和業(yè)務(wù)類型,確定集中存儲(chǔ)服務(wù)器中與該待存儲(chǔ)圖片對應(yīng)的目標(biāo)存儲(chǔ)路徑。
在本步驟中,針對圖片存儲(chǔ)請求中待存儲(chǔ)圖片1的屬性信息執(zhí)行:根據(jù)待存儲(chǔ)圖片1的屬性信息中的分支機(jī)構(gòu)編碼SA0000000000001和業(yè)務(wù)類型:銀行卡業(yè)務(wù),確定集中存儲(chǔ)服務(wù)器中與待存儲(chǔ)圖片1對應(yīng)的目標(biāo)存儲(chǔ)路徑為:/attachment/SA0000000000001/銀行卡業(yè)務(wù)/;
針對圖片存儲(chǔ)請求中待存儲(chǔ)圖片2的屬性信息執(zhí)行:根據(jù)待存儲(chǔ)圖片2的屬性信息中的分支機(jī)構(gòu)編碼SA0000000000001和業(yè)務(wù)類型:銀行卡業(yè)務(wù),確定集中存儲(chǔ)服務(wù)器中與待存儲(chǔ)圖片2對應(yīng)的目標(biāo)存儲(chǔ)路徑為:/attachment/SA0000000000001/銀行卡業(yè)務(wù)/。
步驟310:服務(wù)端根據(jù)該待存儲(chǔ)圖片的屬性信息中的環(huán)節(jié)名稱、業(yè)務(wù)單據(jù)編號、圖片大小、序號,確定目標(biāo)存儲(chǔ)路徑中與該待存儲(chǔ)圖片對應(yīng)的第一圖片。
在本步驟中,根據(jù)待存儲(chǔ)圖片1的屬性信息:環(huán)節(jié)名稱對應(yīng)編號為1、圖片大小3.3MB、序號3和業(yè)務(wù)單據(jù)編號b1881b,確定目標(biāo)存儲(chǔ)路徑/attachment/SA0000000000001/銀行卡業(yè)務(wù)/中與待存儲(chǔ)圖片1對應(yīng)的第一圖片為圖片1。
根據(jù)待存儲(chǔ)圖片2的屬性信息:環(huán)節(jié)名稱對應(yīng)編號為1、圖片大小4.3MB、序號5和業(yè)務(wù)單據(jù)編號b1882c,確定目標(biāo)存儲(chǔ)路徑/attachment/SA0000000000001/銀行卡業(yè)務(wù)/中不存在與待存儲(chǔ)圖片2對應(yīng)的第一圖片。
步驟311:服務(wù)端確定每一個(gè)第一圖片的MD5值。
在本步驟中,服務(wù)端根據(jù)步驟302中設(shè)定通過MD5值算法,比如,確定圖片1的的MD5值為C。
步驟312:服務(wù)端將各個(gè)第一圖片的MD5值發(fā)送至客戶端。
在本步驟中,服務(wù)端將圖片1的MD5值C發(fā)送至客戶端。
步驟313:客戶端接收服務(wù)端發(fā)送的至少一個(gè)第一圖片的MD5值。
在本步驟中,客戶端接收服務(wù)端發(fā)送的圖片1的MD5值C。
步驟314:客戶端將至少一個(gè)第一圖片的MD5值與對應(yīng)的待存儲(chǔ)圖片的MD5值進(jìn)行比較。
在本步驟中,客戶端在接收到的第一圖片的MD5值確定與待儲(chǔ)存圖片1和待存儲(chǔ)圖片2相對應(yīng)的第一圖片??梢钥闯雠c待存儲(chǔ)圖片1對應(yīng)的第一圖片為圖片1;不存在與待存儲(chǔ)圖片2對應(yīng)的第一圖片。將待存儲(chǔ)圖片1的MD5值C與對應(yīng)的圖片1的MD5值A(chǔ)進(jìn)行比較。
步驟315:客戶端將至少一個(gè)待存儲(chǔ)圖片中確定的MD5值不匹配的圖片,確定為目標(biāo)圖片。
在本步驟中,通過步驟314的比較,待存儲(chǔ)圖片1的MD5值C與對應(yīng)的圖片1的MD5值A(chǔ)不匹配,待存儲(chǔ)圖片2的MD5值在第一圖片的MD5值中不存在,因此確定待存儲(chǔ)圖片1和待存儲(chǔ)圖片2均為目標(biāo)圖片。
步驟316:客戶端在所在的分支機(jī)構(gòu)中獲取目標(biāo)圖片,將目標(biāo)圖片發(fā)送至服務(wù)端。
在本步驟中,客戶端在所在的分支結(jié)構(gòu)中獲取待存儲(chǔ)圖片1和待存儲(chǔ)圖片2,并將待存儲(chǔ)圖片1和待存儲(chǔ)圖片2發(fā)送給服務(wù)端。
步驟317:服務(wù)端接收客戶端發(fā)送的目標(biāo)圖片。
在本步驟中,服務(wù)端接收客戶端發(fā)送的待存儲(chǔ)圖片1和待存儲(chǔ)圖片2。
步驟318:服務(wù)端利用目標(biāo)圖片更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)于分支機(jī)構(gòu)的圖片。
在本步驟中,由于待存儲(chǔ)圖片1在集中存儲(chǔ)服務(wù)器中存在對應(yīng)的圖片1,因此服務(wù)端利用待存儲(chǔ)圖片1在存儲(chǔ)路徑1中替換圖片1。由于待存儲(chǔ)圖片2在集中存儲(chǔ)服務(wù)器中不存在對應(yīng)的圖片,因此在存儲(chǔ)路徑1中直接存儲(chǔ)待存儲(chǔ)圖片2。
如圖5所示,本發(fā)明實(shí)施例提供了一種服務(wù)端,該服務(wù)端包括:
接收單元501,用于接收分支機(jī)構(gòu)的客戶端發(fā)送的圖片存儲(chǔ)請求,其中,所述圖片存儲(chǔ)請求中包括至少一個(gè)待存儲(chǔ)圖片的屬性信息;
確定單元502,用于根據(jù)所述圖片存儲(chǔ)請求中的所述至少一個(gè)待存儲(chǔ)圖片的屬性信息,確定連接的集中存儲(chǔ)服務(wù)器中與所述至少一個(gè)待存儲(chǔ)圖片分別對應(yīng)的至少一個(gè)第一圖片;確定每一個(gè)所述第一圖片的MD5值;
發(fā)送單元503,用于將各個(gè)所述第一圖片的MD5值發(fā)送至所述客戶端;
目標(biāo)圖片接收單元504,用于接收所述客戶端發(fā)送的目標(biāo)圖片;其中,所述目標(biāo)圖片包括:所述客戶端將接收到的所述第一圖片的MD5值與自身中對應(yīng)的所述至少一個(gè)待存儲(chǔ)圖片的MD5值進(jìn)行比較后,從所述至少一個(gè)待存儲(chǔ)圖片中確定的MD5值不匹配的圖片;
更新單元505,用于利用所述目標(biāo)圖片更新所述集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)于所述分支機(jī)構(gòu)的圖片。
根據(jù)如圖5所示的實(shí)施例,該服務(wù)端包括:接收單元、確定單元、發(fā)送單元、目標(biāo)圖片接收單元和更新單元;其中,確定單元根據(jù)接收單元接收的待存儲(chǔ)圖片的屬性信息,確定連接的集中存儲(chǔ)服務(wù)器中與待存儲(chǔ)圖片分別對應(yīng)的第一圖片,并確定每一個(gè)第一圖片的MD5值;然后發(fā)送單元再將各個(gè)第一圖片的MD5值發(fā)送至客戶端,以使客戶端根據(jù)各個(gè)第一圖片的MD5值,將待存儲(chǔ)圖片中確定的MD5值不匹配的圖片確定為目標(biāo)圖片,然后更新單元利用目標(biāo)圖片接收單元接收的目標(biāo)圖片,更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)于分支機(jī)構(gòu)的圖片。通過上述過程可知,在本方案利用更新單元僅利用與第一圖片的MD5值不匹配的目標(biāo)圖片,更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)分支機(jī)構(gòu)的圖片,因此,本發(fā)明實(shí)施例可以降低圖片更新的數(shù)據(jù)量。
在本發(fā)明一個(gè)實(shí)施例中,服務(wù)端可以是運(yùn)行與windows和linux下的程序。將服務(wù)器與集中存儲(chǔ)服務(wù)器連接后,要進(jìn)行以下至少兩個(gè)操作:
一、可以配置服務(wù)器在集中存儲(chǔ)服務(wù)器開機(jī)后自動(dòng)啟動(dòng);
二、配置各個(gè)分支機(jī)構(gòu)的編碼、用戶名、密碼、IP地址及端口號,以通過HTTP協(xié)議和各個(gè)分支機(jī)構(gòu)的客戶端進(jìn)行交互。
在本發(fā)明一個(gè)實(shí)施例中,如圖6所示,所述服務(wù)端可以進(jìn)一步包括:命名單元601;
所述命名單元601,用于通過預(yù)先設(shè)定的命名生成規(guī)則,為存儲(chǔ)在所述集中存儲(chǔ)服務(wù)器中的每一個(gè)圖片生成對應(yīng)的名稱,其中,所述命名生成規(guī)則包括:分支機(jī)構(gòu)編碼_業(yè)務(wù)單據(jù)編號_業(yè)務(wù)類型_環(huán)節(jié)名稱_序號.擴(kuò)展名。
在本發(fā)明一個(gè)實(shí)施例中,如圖7所示,所述服務(wù)端可以進(jìn)一步包括:生成單元701和存儲(chǔ)單元702;
所述生成單元701,根據(jù)預(yù)先設(shè)定的路徑生成規(guī)則,生成至少一個(gè)存儲(chǔ)路徑,其中,所述路徑生成規(guī)則,包括:/文件名稱/分支機(jī)構(gòu)編碼/應(yīng)用模塊名稱/;
所述存儲(chǔ)單元702,用于針對每一個(gè)圖片均執(zhí)行:根據(jù)該圖片對應(yīng)的名稱,在所述至少一個(gè)存儲(chǔ)路徑中確定該圖片對應(yīng)的存儲(chǔ)路徑,并將該圖片儲(chǔ)存在對應(yīng)的存儲(chǔ)路徑。
在本發(fā)明一個(gè)實(shí)施例中,所述屬性信息包括:環(huán)節(jié)名稱、業(yè)務(wù)類型、環(huán)節(jié)名稱、圖片大小、序號中的至少一種或多種,以及分支機(jī)構(gòu)編碼和業(yè)務(wù)單據(jù)編號;
所述確定單元502,用于針對所述圖片存儲(chǔ)請求中的每一個(gè)待儲(chǔ)存圖片的屬性信息均執(zhí)行:根據(jù)該待存儲(chǔ)圖片的屬性信息中的分支機(jī)構(gòu)編碼和業(yè)務(wù)單據(jù)編號,確定所述集中存儲(chǔ)服務(wù)器中與該待存儲(chǔ)圖片的分支機(jī)構(gòu)編碼和業(yè)務(wù)單據(jù)編號對應(yīng)的目標(biāo)存儲(chǔ)路徑;根據(jù)該待存儲(chǔ)圖片的屬性信息中的環(huán)節(jié)名稱、業(yè)務(wù)類型、環(huán)節(jié)名稱、數(shù)據(jù)大小、序號中的至少一種或多種,確定所述目標(biāo)存儲(chǔ)路徑中與該待存儲(chǔ)圖片的環(huán)節(jié)名稱、業(yè)務(wù)類型、環(huán)節(jié)名稱、數(shù)據(jù)大小、序號中的至少一種或多種對應(yīng)的第一圖片。
如圖8所示,本發(fā)明實(shí)施例提供了一種客戶端,該客戶端包括:
請求發(fā)送單元801,用于發(fā)送圖片存儲(chǔ)請求至服務(wù)端,其中,所述圖片存儲(chǔ)請求中包括至少一個(gè)待存儲(chǔ)圖片的屬性信息;
MD5值確定單元802,用于確定至少一個(gè)所述待存儲(chǔ)圖片中每一個(gè)所述待存儲(chǔ)圖片的MD5值;
MD5值接收單元803,用于接收所述服務(wù)端發(fā)送的至少一個(gè)第一圖片的MD5值;
目標(biāo)圖片確定單元804,用于將所述至少一個(gè)第一圖片的MD5值與對應(yīng)的所述待存儲(chǔ)圖片的MD5值進(jìn)行比較;將所述至少一個(gè)待存儲(chǔ)圖片中確定的MD5值不匹配的圖片,確定為目標(biāo)圖片;
獲取和發(fā)送單元805,用于在所述分支機(jī)構(gòu)中獲取所述目標(biāo)圖片,將所述目標(biāo)圖片發(fā)送至所述服務(wù)端。
根據(jù)如圖8所示的實(shí)施例,該客戶端包括:請求發(fā)送單元、MD5值確定單元、MD5值接收單元、目標(biāo)圖片確定單元和獲取和發(fā)送單元;其中,MD5值確定單元確定每一個(gè)待存儲(chǔ)圖片的MD5值;目標(biāo)圖片確定單元將MD5值接收單元接收的各個(gè)第一圖片的MD5值與對應(yīng)的待存儲(chǔ)圖片的MD5值進(jìn)行比較,經(jīng)過比較后在待存儲(chǔ)圖片中MD5值不匹配的圖片,確定為目標(biāo)圖片,然后通過獲取和發(fā)送單元將目標(biāo)圖片發(fā)送至服務(wù)端。通過上述可知,客戶端只將MD5值與對應(yīng)的第一圖片不匹配的待存儲(chǔ)圖片確定為目標(biāo)圖片,僅將目標(biāo)圖片發(fā)送給服務(wù)端,而不用將所有圖片發(fā)送給客戶端,因此本發(fā)明實(shí)施例可以降低圖片更新的數(shù)據(jù)量。
在本發(fā)明一個(gè)實(shí)施例中,客戶端可以是運(yùn)行與windows和linux下的程序。將客戶器部署在分支機(jī)構(gòu)中后,要進(jìn)行以下至少兩個(gè)操作:
一、可以配置客戶端在分支機(jī)構(gòu)開機(jī)后自動(dòng)啟動(dòng);
二、配置服務(wù)端的編碼、用戶名、密碼、IP地址及端口號,以通過HTTP協(xié)議與服務(wù)端進(jìn)行交互。
在本發(fā)明一個(gè)實(shí)施例中,如圖9所示,所述客戶端,可以進(jìn)一步包括:觸發(fā)單元901;
觸發(fā)單元901,用于在當(dāng)前時(shí)間達(dá)到預(yù)先設(shè)定的發(fā)送時(shí)間點(diǎn)時(shí),觸發(fā)所述請求發(fā)送單元發(fā)送圖片存儲(chǔ)請求至所述服務(wù)端。
上述裝置內(nèi)的各單元之間的信息交互、執(zhí)行過程等內(nèi)容,由于與本發(fā)明方法實(shí)施例基于同一構(gòu)思,具體內(nèi)容可參見本發(fā)明方法實(shí)施例中的敘述,此處不再贅述。
綜上所述,本發(fā)明各個(gè)實(shí)施例至少可以實(shí)現(xiàn)如下有益效果:
1、在本發(fā)明實(shí)施例中,對于應(yīng)用于服務(wù)端的圖片存儲(chǔ)方法包括:服務(wù)端根據(jù)圖片存儲(chǔ)請求中的待存儲(chǔ)圖片的屬性信息,確定與其相連的集中存儲(chǔ)服務(wù)器中,與待存儲(chǔ)圖片分別對應(yīng)的第一圖片。然后確定每一個(gè)第一圖片的MD5值,再將各個(gè)第一圖片的MD5值發(fā)送至客戶端,以使客戶端在待存儲(chǔ)圖中將與各個(gè)第一圖片的MD5值不匹配的圖片確定為目標(biāo)圖片。然后僅利用客戶端發(fā)送的目標(biāo)圖片更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)于客戶端所在分支機(jī)構(gòu)的圖片。通過上述過程可知,本方案中僅利用與第一圖片的MD5值不匹配的目標(biāo)圖片,更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)分支機(jī)構(gòu)的圖片,因此,本發(fā)明實(shí)施例可以降低圖片更新的數(shù)據(jù)量。
2、在本發(fā)明實(shí)施例中,服務(wù)端可以根據(jù)預(yù)先設(shè)定的命名生成規(guī)則,為存儲(chǔ)在集中存儲(chǔ)服務(wù)器中的每一個(gè)圖片生成對應(yīng)的名稱。因此當(dāng)服務(wù)端在集中服務(wù)器中查詢圖片時(shí),可以根據(jù)圖片的名稱快速的鎖定圖片。
3、在本發(fā)明實(shí)施例中,通過設(shè)定的路徑生成規(guī)則,生成至少一個(gè)存儲(chǔ)路徑,并根據(jù)每一張圖片對應(yīng)的名稱,將該圖片存儲(chǔ)在與其對應(yīng)的存儲(chǔ)路徑下,以便當(dāng)服務(wù)端在集中存儲(chǔ)服務(wù)器中查詢圖片時(shí),可以根據(jù)該圖片的存儲(chǔ)路徑,直接到存儲(chǔ)該圖片的存儲(chǔ)路徑下查詢圖片,因此可以縮短查詢圖片的時(shí)間。
4、在本發(fā)明實(shí)施例中,可以根據(jù)待存儲(chǔ)圖片的屬性信息在集中存儲(chǔ)服務(wù)器中確定與其對應(yīng)的目標(biāo)存儲(chǔ)路徑,然后在目標(biāo)存儲(chǔ)路徑中確定與其對應(yīng)的第一圖片,由于是根據(jù)待存儲(chǔ)圖片的屬性信息進(jìn)行確定的,因此提高了第一圖片與待存儲(chǔ)圖片匹配的概率。
5、在本發(fā)明實(shí)施例中,對于應(yīng)用于客戶端的圖片存儲(chǔ)方法包括:客戶端接收服務(wù)端根據(jù)圖片存儲(chǔ)請求確定的各個(gè)第一圖片的MD5值,然后將確定的各個(gè)待存儲(chǔ)圖片的M D5值與對應(yīng)的第一圖片的MD5值進(jìn)行比較。通過比較將待存儲(chǔ)圖片中MD5值不匹配的圖片確定為目標(biāo)圖片,然后將目標(biāo)圖片發(fā)送給服務(wù)端,以使服務(wù)端利用目標(biāo)圖片更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)于客戶端所在分支機(jī)構(gòu)的圖片。通過上述過程可知,客戶端將待存儲(chǔ)圖片中與第一圖片的MD5值不匹配的圖片,確定為目標(biāo)圖片。僅將目標(biāo)圖片發(fā)送給客戶端,而不用將所有圖片發(fā)送給客戶端,因此本發(fā)明實(shí)施例可以降低圖片更新的數(shù)據(jù)量。
6、在本發(fā)明實(shí)施例中,該服務(wù)端包括:接收單元、確定單元、發(fā)送單元、目標(biāo)圖片接收單元和更新單元;其中,確定單元根據(jù)接收單元接收的待存儲(chǔ)圖片的屬性信息,確定連接的集中存儲(chǔ)服務(wù)器中與待存儲(chǔ)圖片分別對應(yīng)的第一圖片,并確定每一個(gè)第一圖片的MD5值;然后發(fā)送單元再將各個(gè)第一圖片的MD5值發(fā)送至客戶端,以使客戶端根據(jù)各個(gè)第一圖片的MD5值,將待存儲(chǔ)圖片中確定的MD5值不匹配的圖片確定為目標(biāo)圖片,然后更新單元利用目標(biāo)圖片接收單元接收的目標(biāo)圖片,更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)于分支機(jī)構(gòu)的圖片。通過上述過程可知,在本方案利用更新單元僅利用與第一圖片的MD5值不匹配的目標(biāo)圖片,更新集中存儲(chǔ)服務(wù)器中存儲(chǔ)的對應(yīng)分支機(jī)構(gòu)的圖片,因此,本發(fā)明實(shí)施例可以降低圖片更新的數(shù)據(jù)量。
7、在本發(fā)明實(shí)施例中,該客戶端包括:請求發(fā)送單元、MD5值確定單元、MD5值接收單元、目標(biāo)圖片確定單元和獲取和發(fā)送單元;其中,MD5值確定單元確定每一個(gè)待存儲(chǔ)圖片的MD5值;目標(biāo)圖片確定單元將MD5值接收單元接收的各個(gè)第一圖片的MD5值與對應(yīng)的待存儲(chǔ)圖片的MD5值進(jìn)行比較,經(jīng)過比較后在待存儲(chǔ)圖片中MD5值不匹配的圖片,確定為目標(biāo)圖片,然后通過獲取和發(fā)送單元將目標(biāo)圖片發(fā)送至服務(wù)端。通過上述可知,客戶端只將MD5值與對應(yīng)的第一圖片不匹配的待存儲(chǔ)圖片確定為目標(biāo)圖片,僅將目標(biāo)圖片發(fā)送給服務(wù)端,而不用將所有圖片發(fā)送給客戶端,因此本發(fā)明實(shí)施例可以降低圖片更新的數(shù)據(jù)量。
需要說明的是,在本文中,諸如第一和第二之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個(gè)······”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同因素。
本領(lǐng)域普通技術(shù)人員可以理解:實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成,前述的程序可以存儲(chǔ)在計(jì)算機(jī)可讀取的存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括:ROM、RAM、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)中。
最后需要說明的是:以上所述僅為本發(fā)明的較佳實(shí)施例,僅用于說明本發(fā)明的技術(shù)方案,并非用于限定本發(fā)明的保護(hù)范圍。凡在本發(fā)明的精神和原則之內(nèi)所做的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍內(nèi)。