文件版本管理方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及軟件開發(fā)技術(shù)領(lǐng)域,具體而言,涉及一種文件版本管理方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著軟件開發(fā)規(guī)模的擴大,系統(tǒng)模塊及程序數(shù)量也在增加,對于部分系統(tǒng),在各程序間流轉(zhuǎn)文件,以及文件的版本管理功能要求日益增加。
[0003]現(xiàn)有技術(shù)中,各程序之間有的是獨立實現(xiàn)的文件版本管理功能以及文件的流轉(zhuǎn)。
[0004]文件的版本管理功能是由軟件系統(tǒng)的服務(wù)端維護,當(dāng)需要文件流轉(zhuǎn)時,再由服務(wù)端將文件直接傳遞給各個客戶端,各個不同的客戶端需要傳遞文件時,由客戶端獨立實現(xiàn)文件的傳遞與管理功能。
[0005]現(xiàn)有技術(shù)中,服務(wù)器端通常依賴于Windows操作系統(tǒng),不能用于非Windows的操作系統(tǒng),但客戶端(訪問者或者調(diào)用者)可以隨意搭建在任意平臺上,服務(wù)器無法實現(xiàn)對搭載不同操作系統(tǒng)的客戶端中文件版本的管理以及文件的流轉(zhuǎn)。
【發(fā)明內(nèi)容】
[0006]本發(fā)明旨在提供一種文件版本管理方法及系統(tǒng),以解決跨平臺間文件版本管理以及文件流轉(zhuǎn)的問題。
[0007]為此,本發(fā)明提供如下技術(shù)方案:
[0008]一種文件版本管理方法,包括:
[0009]在客戶端設(shè)置COM組件;
[0010]創(chuàng)建文件對象,并通過COM組件將所述文件對象對應(yīng)的物理文件上傳到服務(wù)器中,并在版本信息表中記錄所述文件對象的版本信息,在文件地址信息表中記錄所述物理文件存放信息;
[0011]利用WebService中的方法對所述文件對象進(jìn)行更新操作,并通過COM組件將更新后的文件對象對應(yīng)的物理文件上傳到服務(wù)器中,并在版本信息表中記錄所述文件對象的新版本信息;
[0012]利用WebService中的方法對所述文件對象進(jìn)行下載操作。
[0013]優(yōu)選地,所述文件對象包括:文件或文件夾的地址、名稱、版本信息。
[0014]優(yōu)選地,所述利用WebService中的方法對所述文件對象進(jìn)行更新操作包括:
[0015]通過WebService中提供的CheckOut方法對所述文件對象進(jìn)行簽出操作;
[0016]通過WebService中提供的CheckIn方法對已簽出的文件對象進(jìn)行簽入操作。
[0017]優(yōu)選地,所述方法還包括:
[0018]對文件對象進(jìn)行簽出操作后,在文件簽出表中記錄所述文件對象為簽出狀態(tài),所述文件簽出表中包含用于記錄被簽出的對象文件在版本信息表中的對應(yīng)信息。
[0019]優(yōu)選地,所述通過WebService中提供的CheckIn方法對已簽出的文件對象進(jìn)行簽入操作包括:
[0020]確定待簽入的文件對象的地址信息;
[0021]根據(jù)所述地址信息從所述文件簽出表中檢查所述文件對象是否處于簽出狀態(tài),并檢查所述文件對象是否具有正確的版本信息;
[0022]如果檢測到所述文件對象處于簽出狀態(tài)并具有正確的版本信息,則對所述文件對象進(jìn)行簽入操作。
[0023]優(yōu)選地,所述方法還包括:
[0024]通過WebService中提供的MarkLabel方法對目錄對象進(jìn)行打標(biāo)簽操作。
[0025]一種文件版本管理系統(tǒng),包括:
[0026]設(shè)置模塊,用于在客戶端設(shè)置COM組件;
[0027]文件對象創(chuàng)建模塊,用于創(chuàng)建文件對象;
[0028]上傳模塊,用于通過COM組件將所述文件對象對應(yīng)的物理文件上傳到服務(wù)器中;
[0029]記錄模塊,用于在版本信息表中記錄所述文件對象的版本信息,在文件地址信息表中記錄所述物理文件存放信息;
[0030]文件對象更新模塊,用于利用WebService中的方法對所述文件對象進(jìn)行更新操作;
[0031]所述上傳模塊,還用于通過COM組件將更新后的文件對象對應(yīng)的物理文件上傳到服務(wù)器中;
[0032]所述記錄模塊,還用于在版本信息表中記錄所述文件對象的新版本信息;
[0033]下載模塊,用于利用WebService中的方法對所述文件對象進(jìn)行下載操作。
[0034]優(yōu)選地,所述文件對象更新模塊包括:
[0035]簽出操作單元,用于通過WebService中提供的CheckOut方法對所述文件對象進(jìn)行簽出操作;
[0036]簽入操作單元,用于通過WebService中提供的CheckIn方法對已簽出的文件對象進(jìn)行簽入操作。
[0037]優(yōu)選地,所述記錄模塊,還用于在所述簽出操作單元對文件對象進(jìn)行簽出操作后,在文件簽出表中記錄所述文件對象為簽出狀態(tài),所述文件簽出表中包含用于記錄被簽出的對象文件在版本信息表中的對應(yīng)信息。
[0038]優(yōu)選地,所述簽入操作單元包括:
[0039]確定子單元,用于確定待簽入的文件對象的地址信息;
[0040]檢查子單元,用于根據(jù)所述地址信息從所述文件簽出表中檢查所述文件對象是否處于簽出狀態(tài),并檢查所述文件對象是否具有正確的版本信息;
[0041]操作子單元,用于在所述檢查子單元檢測到所述文件對象處于簽出狀態(tài)并具有正確的版本信息,則對所述文件對象進(jìn)行簽入操作。
[0042]優(yōu)選地,所述系統(tǒng)還包括:
[0043]打標(biāo)簽?zāi)K,用于通過WebService中提供的MarkLabel方法對目錄對象進(jìn)行打標(biāo)簽操作。
[0044]本發(fā)明上述實施例的文件版本管理方法及系統(tǒng),采用了 WebService技術(shù),克服了平臺間訪問障礙,達(dá)到了跨平臺操作的效果。
【附圖說明】
[0045]此處所說明的附圖用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當(dāng)限定。在附圖中:
[0046]圖1是本發(fā)明實施例中所用的數(shù)據(jù)庫結(jié)構(gòu)示意圖;
[0047]圖2是本發(fā)明實施例文件版本管理方法的流程圖;
[0048]圖3是本發(fā)明實施例文件版本管理系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實施方式】
[0049]為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明實施例的方案,下面結(jié)合附圖和實施方式對本發(fā)明實施例作進(jìn)一步的詳細(xì)說明。
[0050]本發(fā)明提供了一種文件版本管理方法及其裝置,用于在軟件系統(tǒng)開發(fā)中實現(xiàn)對文件的版本管理以及文件流轉(zhuǎn)的功能。在本發(fā)明實施例中,將文件或文件夾統(tǒng)一放到服務(wù)上進(jìn)行管理。在客戶端嵌入COM組件,該組件負(fù)責(zé)與服務(wù)器進(jìn)行通信,組件將所有的文件版本管理相關(guān)的操作都封裝在組件內(nèi)部,外部不用關(guān)心內(nèi)部文件版本管理的細(xì)節(jié),直接調(diào)用COM組件提供的接口,來實現(xiàn)文件下載上傳,提交版本的相關(guān)功能。
[0051 ] 在本發(fā)明實施例中,每個文件或者文件夾都由文件對象來表示,文件對象的格式如:FFS://文件夾I/文件夾2/文件:版本號的字符串,當(dāng)各客戶端之間,或者服務(wù)端與客戶端進(jìn)行文件的傳遞時,僅傳遞如上所示的字符串即可,再由客戶端將該字符串交給嵌入的COM組件,COM組件通過該字符串與服務(wù)器端通信,將具體的文件或者文件夾內(nèi)容獲取到客戶端指定的位置,實現(xiàn)文件的下載。
[0052]進(jìn)一步地,在本發(fā)明實施例中,文件下載或者上傳時還具有校驗功能。具體地,文件下載時,COM組件從服務(wù)器端首先獲取到該文件的MD5校驗碼,當(dāng)文件下載完成后對文件重新計算MD5的校驗碼值,與之前獲取到的校驗碼進(jìn)行比較。如果校驗碼相同,則表示文件傳輸無誤;如果校驗碼不同,則說明文件下載有誤,需要重新下載。文件上傳時,為了減少不必要的上傳次數(shù),上傳之前會先計算文件的MD5校驗碼值,先將該校驗碼值發(fā)送給服務(wù)器端,如果該碼值在服務(wù)器端已經(jīng)存在,則表示該文件在服務(wù)器端已經(jīng)存在,即無需上傳,直接可返回上傳成功的標(biāo)識。
[0053]在本發(fā)明實施例中,服務(wù)器端和客戶端的通信方式采用Web Service, WebServices是由企業(yè)發(fā)布的完成其特定商務(wù)需求的在線應(yīng)用服務(wù),其他公司或應(yīng)用軟件能夠通過因特網(wǎng)來訪問并使用這項在線服務(wù)。它邏輯性地為其他應(yīng)用程序提供數(shù)據(jù)與服務(wù),各應(yīng)用程序通過網(wǎng)絡(luò)協(xié)議和規(guī)定的一些標(biāo)準(zhǔn)數(shù)據(jù)格式(Http,XML, Soap)來訪問WebService,通過Web Service內(nèi)部執(zhí)行得到所需結(jié)果,Web Service可以執(zhí)行從簡單的請求到復(fù)雜商務(wù)處理的任何功能。
[0054]客戶端文件校驗技術(shù)可以采用MD5算法,MD5是信息摘要算法,它可以對任何文件產(chǎn)生一個唯一的MD5驗證碼,一旦這個文件在傳輸過程中,其內(nèi)容被損壞或者被修改的話,那么這個文件的MD5碼就會發(fā)生變化,通過對文件MD5的驗證,可以得知獲得的文件是否完難
iF.0
[0055]COM組件是微軟公司為了計算機工業(yè)