版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
文件重命名功能一、目錄21.技術(shù)原理2.效果圖預(yù)覽3.實現(xiàn)步驟4.功能驗證測試二、技術(shù)原理3(1)視圖層:顯示文件重命名的輸入框(2)控制層:接收視圖層的消息,向服務(wù)層發(fā)送文件和文件夾重命名參數(shù),并將服務(wù)層返回的結(jié)果發(fā)送到視圖層(3)服務(wù)層:調(diào)用swift服務(wù)對文件重命名,并將結(jié)果返回給控制層三、效果預(yù)覽圖4四、步驟實現(xiàn)5在cn/edu/sict/cloud/storage/service/SwiftStorageService.java添加如下代碼public
booleancreateDir(Stringusername,Stringpath,Stringname){SwiftDFSswiftdfs=newSwiftDFS();path+=name+"/";swiftdfs.createDir(username,path);return
true;}四、步驟實現(xiàn)6在cn/edu/sict/cloud/storage/sh/SwiftDFS.java添加如下代碼private
voidrenamedirfile(StringrootPath,Stringpath,StringnewPath){this.copy(rootPath,rootPath,path,newPath);this.delete(rootPath,path);}四、步驟實現(xiàn)7在cn/edu/sict/cloud/storage/sh/SwiftDFS.java添加如下代碼private
voidrenamecdirfile(Stringrootpath,Stringcpath,Stringpath,Stringnewpath){Stringstr1[]=newpath.split("/");Stringstr2[]=cpath.split("/");Stringstrpath="";for(int
i=0;i<str2.length;i++){if(i<str1.length){strpath+=str1[i]+"/";}else{strpath+=str2[i]+"/";}}this.copy(rootpath,rootpath,cpath,strpath);this.delete(rootpath,cpath);}四、步驟實現(xiàn)8在cn/edu/sict/cloud/storage/sh/SwiftDFS.java添加如下代碼public
booleanrenameFile(Stringrpath,Stringname){Mapmappath=getSplitPath(rpath);Stringpath=mappath.get("path").toString();Stringrootpath=mappath.get("rootPath").toString();Stringnewpath="";Stringstr[]=path.split("/");for(int
i=0;i<str.length;i++){if(i==str.length-1){newpath+=name;}else{newpath+=str[i]+"/";}}this.copy(rootpath,rootpath,path,newpath);this.delete(rootpath,path);return
true;}四、步驟實現(xiàn)9在cn/edu/sict/cloud/storage/sh/SwiftDFS.java添加如下代碼private
voidrenamecfilefile(StringrootPath,Stringcpath,Stringpath,StringnewPath){Stringstr1[]=newPath.split("/");Stringstr2[]=cpath.split("/");Stringstrpath="";for(int
i=0;i<str2.length;i++){if(i<str1.length){strpath+=str1[i]+"/";}else
if(i==str2.length-1){strpath+=str2[i];}else{strpath+=str2[i]+"/";}}this.copy(rootPath,rootPath,cpath,strpath);this.delete(rootPath,cpath);}四、步驟實現(xiàn)10在cn/edu/sict/cloud/storage/sh/SwiftDFS.java添加如下代碼private
booleanisexist(Stringrootpath,Stringnewpath){List<?extendsSwiftObject>objs=this.list(rootpath);for(SwiftObjectswiftObject:objs){if(swiftObject.getName().equals(newpath)){return
false;}}return
true;}private
voidcopy(StringsrcContainer,StringdestContainer,StringsrcPath,StringdestPath){ObjectLocationsrcLocation=ObjectLocation.create(srcContainer,srcPath);ObjectLocationdestLocation=ObjectLocation.create(destContainer,destPath);os.objectStorage().objects().copy(srcLocation,destLocation);}private
voiddelete(StringrootPath,StringsrcPath){os.objectStorage().objects().delete(rootPath,srcPath);}四、步驟實現(xiàn)11在cn/edu/sict/cloud/storage/service/SwiftStorageService.java添加如下代碼public
booleanupdatefile(Stringusername,Stringpath,Stringname,boolean
isdir){SwiftDFSswiftdfs=newSwiftDFS();if(isdir){return
swiftdfs.renameDir(username+"/"+path,name);}else{return
swiftdfs.renameFile(username+"/"+path,name);}}四、步驟實現(xiàn)12在cn/edu/sict/cloud/storage/Web/StorageController.java添加如下代碼@RequestMapping("/updatefile")@ResponseBodypublicObjectupdatefile(HttpServletRequestrequest,HttpServletResponseresponse,Stringpath,Stringname,boolean
isDir){Useruser=getSessionUser(request);boolean
flag=storage.updatefile(user.getUsername(),path,name,isDir);return
newMessageBean(flag,flag?Constants.SUCCESS_7:(isDir?Constants.ERROR_4:Constants.ERROR_5));四、步驟實現(xiàn)13用戶選擇某一文件觸發(fā)單擊事件show():functionshow(){varobjTable=document.getElementById("tab");for(vari=0;i<objTable.rows.length;i++){varcheckbox=objTable.rows[i].childNodes[1].childNodes[0].childNodes[5];if(checkbox.checked==true){document.getElementById("delete").style.display="block";document.getElementById("download").style.display="block";document.getElementById("rename").style.display="block";document.getElementById("move").style.display="block";document.getElementById("copy").style.display="block";document.getElementById("selectColumn").style.display="block";break;}else{document.getElementById("delete").style.display="none";document.getElementById("download").style.display="none";document.getElementById("rename").style.display="none";document.getElementById("move").style.display="none";document.getElementById("copy").style.display="none";document.getElementById("selectColumn").style.display="none";}}}四、步驟實現(xiàn)14為重命名按鈕添加單擊事件rename(),并在js中添加如下代碼:functionrenanme(){varnum=0;varobjTable=document.getElementById("tab");for(vary=0;y<objTable.rows.length;y++){varcheckbox=objTable.rows[y].childNodes[1].childNodes[0].childNodes[5];if(checkbox.checked==true){if(num<1){varrenamebox=checkbox.parentNode.parentNode.parentNode.childNodes[3].childNodes[2];varrenametxt=checkbox.parentNode.parentNode.parentNode.childNodes[3].childNodes[0];renametxt.style.display="none";renamebox.style.display="block";num+=1;}else{alert('不能同時重命名兩個或兩個以上文件');location.reload();break;}}}}四、步驟實現(xiàn)15在js中添加如下代碼,獲取用戶輸入的文件名、文件路徑,判斷是否為文件夾functionsure(){varobjTable=document.getElementById("tab");for(vary=0;y<objTable.rows.length;y++){varcheckbox=objTable.rows[y].childNodes[1].childNodes[0].childNodes[5];if(checkbox.checked==true){varchangename=checkbox.parentNode.parentNode.parentNode.childN
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024綠化帶雜草管理協(xié)議樣本
- 2024年適用租車服務(wù)協(xié)議綜合范例
- 2024年工程項目食堂供應(yīng)承包協(xié)議
- 2024年土建工程協(xié)議示范文本
- 2024在線支付安全規(guī)范SET協(xié)議
- 2024年個人貸款協(xié)議模板大全2
- 醫(yī)生聘用合同的崗位職責(zé)
- 2024年師徒合作協(xié)議范本下載
- 2024年度西安二手房銷售協(xié)議模板
- 2024年金融領(lǐng)域反擔(dān)保協(xié)議參考樣式
- 酒精(乙醇)安全技術(shù)說明書(MSDS)
- 食品生產(chǎn)質(zhì)量手冊
- 《建設(shè)項目全過程造價咨詢規(guī)程27188307》課件
- 數(shù)控刀具切削山高seco中文turning cn2007lr
- 中小學(xué)教師資格考試(筆試)成績復(fù)核申請表
- m301樣車nvh改進方案
- 新魯科版三年級英語上冊全冊教案教學(xué)設(shè)計(魯教版)
- 產(chǎn)品技術(shù)信息-電芯規(guī)格書
- JJG 1036-2022電子天平
- GB/T 26704-2022鉛筆
- YY/T 0729.2-2009組織粘合劑粘接性能試驗方法第2部分:T-剝離拉伸承載強度
評論
0/150
提交評論