版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
2017屆普通本科畢業(yè)論文(設(shè)計)湖北經(jīng)濟(jì)學(xué)院教務(wù)處制 1Abstract 2 31.1開發(fā)背景 31.2國內(nèi)外發(fā)展現(xiàn)狀及其趨勢 31.3開發(fā)的目的及意義 41.4本課題所研究的內(nèi)容 4第2章相關(guān)技術(shù)簡介 6 6 72.3前端框架MiniUI、Bootstrap的特點(diǎn) 72.4B/S架構(gòu)特點(diǎn) 8第3章系統(tǒng)需求設(shè)計 93.1功能需求 93.1.1信息的展示 93.1.2用戶對文件的基本操作的功能 93.1.3文件分享 93.1.4文件在線預(yù)覽 3.2用戶界面需求 3.3性能需求 3.3.1系統(tǒng)的可靠性和安全性 3.3.2系統(tǒng)的易用性和易維護(hù)性 3.4運(yùn)行環(huán)境 3.4.1軟件平臺 3.4.2硬件平臺 第4章系統(tǒng)的設(shè)計 4.1系統(tǒng)總體說明 4.1.1主要業(yè)務(wù)功能劃分 4.2技術(shù)關(guān)鍵點(diǎn)考慮 4.2.1用戶登錄驗(yàn)證并跳轉(zhuǎn) 4.2.2上傳文件到服務(wù)器 4.2.3文件分享 4.2.4文件在線預(yù)覽 4.2.5圖片文件的展示 4.3數(shù)據(jù)庫設(shè)計 4.3.1數(shù)據(jù)庫的闡述 4.3.2表的設(shè)計 第五章系統(tǒng)的實(shí)現(xiàn) 5.1系統(tǒng)搭建 5.2功能實(shí)現(xiàn) 5.2.1用戶登錄界面 5.2.2用戶主界面 5.2.3上傳文件界面 5.2.4下載文件界面 5.2.5刪除文件界面 5.2.6重命名文件界面 5.2.7分享文件界面 5.2.8搜索文件界面 5.2.9圖片展示界面 5.2.10文檔展示界面 5.2.11音樂展示界面 5.2.12視頻展示界面 5.2.13其他文件展示界面 5.2.14提取文件界面 5.2.15用戶個人信息展示界面 5.3關(guān)鍵代碼分析 5.3.1上傳文件 5.3.2下載文件 5.3.3圖片文件的整體展示 結(jié)束語 參考文獻(xiàn) 畢業(yè)設(shè)計概畢業(yè)設(shè)計說圖片預(yù)覽混件使用到的工登錄驗(yàn)證序上傳文件序disk-ssh開題報告書webDH全套設(shè)計加扣30122505821隨著計算機(jī)及網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,現(xiàn)代通訊工具應(yīng)用的普及,計算機(jī)在現(xiàn)代社會生活中發(fā)揮著重要的作用,而與之相伴隨的是大量數(shù)據(jù)資料,其中占比最大的是經(jīng)常使用的以文件形式存在的資料,隨著信息的增多,信息的存儲和管理變得復(fù)雜,單機(jī)硬盤存儲已滿足不了用戶的文件存儲和管理需要,因此,研究和實(shí)現(xiàn)一個可靠的、低成本的、操作便利的、可供個人存儲資料及共享資料的、易拓展、易搜索、易評價的網(wǎng)絡(luò)存儲應(yīng)用系統(tǒng)具有重要的意義和實(shí)用價值。在此背景下,以網(wǎng)絡(luò)存儲技術(shù)為核心的個人在線網(wǎng)盤系統(tǒng)應(yīng)運(yùn)而生。本系統(tǒng),前端部分主要采用流行框架MiniUI以及部分Bootstrap進(jìn)行數(shù)據(jù)在頁面上的展示,后端部分采用SpringMVC+MyBatis進(jìn)行邏輯控制和數(shù)據(jù)獲取,數(shù)據(jù)庫部分采用關(guān)系型數(shù)據(jù)庫管理系統(tǒng)MySQL進(jìn)行數(shù)據(jù)管理。本系統(tǒng)主要實(shí)現(xiàn)了以下功能:(1)普通用戶登錄系統(tǒng),可以實(shí)現(xiàn)文件的上傳,下載,刪除,分享,重命名,搜索,并且可以分類對文件進(jìn)行在線查看,加密分享,實(shí)時刪除等操作,相關(guān)用戶獲取分享鏈接后可直接或間接提取文件。用戶可通過個人中心查看自身信息。(2)管理員登錄系統(tǒng),可查看用戶注冊用戶登錄、用戶個人空間使用情況等基本信息。本系統(tǒng)采用B/S架構(gòu),用戶使用該系統(tǒng),不受操作系統(tǒng)平臺的限制,能夠?qū)崿F(xiàn)隨時隨地查看并獲取文件,并規(guī)避可能發(fā)生的數(shù)據(jù)危險,真正實(shí)現(xiàn)滿足用戶需求,提高效率,節(jié)約資源,處理業(yè)務(wù)的目的。2Inrecentyears,withthecontinuousdevelopmentoftechnologyandthepopularityofmoderncommunicationtoolcomputersplayanimportantroleinmodernsociallife.Accompaniedbyalargenumberofdata,whichaccountedforthelargestisoftenusedintheformofdocumentsexist.Withtheincreaseofinformation,thestorageandmanagementofinformationbecomescomplicated,harddiskstoragehasbeenunabletomeettheuser'sfilestorageandmanagementneeds.Therefore,itisofgreateasy-to-use,easy-to-evaluateandeasy-to-evaluatenetworkstorageThefrontpartofthesystem,mainlyusingpopularframeworkMiniUIandsomeBootstrapdatadisplay,thebackpartoftheuseofSpringMVC+MyBatisdatabasemanagementsystemfordatamanagementMySQL.(1)Forordinaryuser,youcanupload,download,delete,share,rename,searchthefiles,andcanbeclassifisharing,real-timedeleteandotheroperations,therelevantuseraccesstoinformationthroughthepersonalcenter.(2)Foradministrator,youcanviewtheuserregistration、login,userpersonalspaceandotherbasicinformation.theoperatingsystemplatform,toachieveanytodocuments,andtoavoidpossibledatarisk,trulymeettheneedsofusers,Keywords:B/S;SpringMVC;MyBatis;MiniUI;MySQL31.1開發(fā)背景隨著計算機(jī)及網(wǎng)絡(luò)技術(shù)的不斷發(fā)展,現(xiàn)代通訊工具應(yīng)用的普及,計算機(jī)在現(xiàn)代社會生活中發(fā)揮著重要的作用,而與之相伴隨的就是大量數(shù)據(jù)資料而且是一些經(jīng)常使用的文件資料,處理、傳輸和存儲成為當(dāng)今數(shù)據(jù)信息技術(shù)的三大基石,計算設(shè)施、網(wǎng)絡(luò)設(shè)施以及存儲設(shè)施合在一起,成為以互聯(lián)網(wǎng)為代表的現(xiàn)代信息社會的基礎(chǔ)設(shè)施。而為了適應(yīng)集成/網(wǎng)絡(luò)技術(shù)的飛速發(fā)展,信息大都采用二進(jìn)制數(shù)字的形式存儲,隨著信息的增多,信息的存儲和管理變得復(fù)雜,單機(jī)硬盤存儲已滿足不了用戶的文件存儲和管理需要,因此,研究和實(shí)現(xiàn)一個可靠的、低成本的、操作便利的、可供個人存儲資料及共享資料的、易拓展、易搜索、易評價的網(wǎng)絡(luò)存儲應(yīng)用系統(tǒng)具有重要的意義和實(shí)用價值。個人網(wǎng)盤系統(tǒng)以網(wǎng)絡(luò)存儲技術(shù)為核心應(yīng)運(yùn)而生,以適應(yīng)目前信息化社會對支持網(wǎng)絡(luò)、支持多種數(shù)據(jù)信息的新型網(wǎng)絡(luò)應(yīng)用軟件的要求,取代以紙質(zhì)、手工為主體的傳統(tǒng)辦公方式,解決單機(jī)文件存儲軟件存儲量少、文件工作和管理效率低、文件交互共享能力有限等弊端,以提高文件管理的效率,減輕硬盤存儲和管理壓力。1.2國內(nèi)外發(fā)展現(xiàn)狀及其趨勢隨著當(dāng)前互聯(lián)網(wǎng)的發(fā)展,國外推出了Box、DropBox、OneDrive、iCloud等發(fā)展成熟受眾面較大的網(wǎng)盤服務(wù),國內(nèi)互聯(lián)網(wǎng)企業(yè)也相繼推出了QQ網(wǎng)盤、金山快盤、115網(wǎng)盤、360網(wǎng)盤、百度網(wǎng)盤等網(wǎng)絡(luò)磁盤工具,互聯(lián)網(wǎng)上的網(wǎng)絡(luò)磁盤功能較全面、操作4便捷,受到大量用戶的歡迎。綜合研究各類網(wǎng)盤,可得出此類網(wǎng)盤系統(tǒng)具體實(shí)現(xiàn)的功能和使用流程類似,用戶通過網(wǎng)上登錄系統(tǒng)的方式,可方便上傳、下載、分享、刪除文件,并且系統(tǒng)一般提供獨(dú)特的分享和分組功能,突破傳統(tǒng)存儲的觀念,適應(yīng)互聯(lián)網(wǎng)時代的資源共享的特征。與其他同類產(chǎn)品相比,“網(wǎng)絡(luò)磁盤”產(chǎn)品具有直觀預(yù)覽、分享、分組管理、穩(wěn)定安全的四大特點(diǎn),基本能實(shí)現(xiàn)用戶對網(wǎng)絡(luò)文件的傳輸和需求,也受到了廣大網(wǎng)友的歡迎,紙質(zhì)話及單機(jī)化存儲逐漸退出大眾的視線。1.3開發(fā)的目的及意義網(wǎng)絡(luò)存儲最直觀的意義有三,第一是減少文件信息占用的用戶硬盤內(nèi)存,使得用戶不必在自己的單機(jī)上劃分較大的空間用于存儲信息,第二,提供更簡單快捷的在線查閱方式,用戶不必下載文件到自己的磁盤上即可查閱文件,第三,快速實(shí)現(xiàn)文件共享。通過在線網(wǎng)盤系統(tǒng)的研究與設(shè)計,目的是,能夠讓該系統(tǒng)實(shí)現(xiàn)收集與存儲用戶個人文件,并提供上傳、下載、刪除、分享、重命名、搜索等功能供用戶管理存儲在服務(wù)器上的文件,同時,將文件分類展示,并提供在線閱覽,以最大限度的方便用戶對同類文件的操作,真正實(shí)現(xiàn)滿足用戶需求,提高效率,節(jié)約資源,處理業(yè)務(wù)的目的。1.4本課題所研究的內(nèi)容本課題基于Web平臺開發(fā)出一個在線網(wǎng)盤系統(tǒng),能夠滿足用戶線上處理個人文件信息的需求。本次設(shè)計的系統(tǒng)是針對個人畢業(yè)設(shè)計,其系統(tǒng)設(shè)計參考當(dāng)前主流的Web系統(tǒng)的開發(fā)流程。整個系統(tǒng)研究內(nèi)容分為以下幾個部分:文件的上傳、下載與重命名:(1)用戶點(diǎn)擊界面上的“上傳”按鈕,可以將個人系統(tǒng)的文件上傳到服務(wù)器,系統(tǒng)自動獲取文件大小和文件類型,并進(jìn)行分類。(2)用戶點(diǎn)擊界面上的“下載”按鈕,將已經(jīng)上傳到服務(wù)器上的文件下載到本5(3)用戶點(diǎn)擊界面上的“重命名”按鈕,可以給上傳到服務(wù)器的文件重命名,并判斷是否有重名文件。(1)用戶通過選擇文件,并點(diǎn)擊生成公開鏈接,可以獲取該文件的公開下載鏈接,其他用戶可通過該鏈接直接下載此文件。(2)用戶通過選擇文件,并點(diǎn)擊生成私密鏈接,可以獲取該文件的私密下載鏈接和提取碼,其他用戶可通過該鏈接,并輸入正確的提取碼下載此文件。線查看,暫時不支持對除以上四種文件類型以外的文件進(jìn)行查看?;谏鲜霰尘埃诮酉聛淼恼鹿?jié),將對個人在線網(wǎng)盤系統(tǒng)所涉及的相關(guān)技術(shù)進(jìn)行6第2章相關(guān)技術(shù)簡介框架,使用了MVC架構(gòu)模式的思想,將web層進(jìn)行職責(zé)解耦,基于請求驅(qū)動指的就是使用請求-響應(yīng)模型,框架的目的就是幫助我們簡化開發(fā),SpringMVC也是要簡化日SpringMVC也是服務(wù)到工作者模式的實(shí)現(xiàn),但進(jìn)行可優(yōu)化。前端控制器是DispatcherServlet;應(yīng)用控制器其實(shí)拆為處理器映射器(HandlerMapping)進(jìn)行處理器管理和視圖解析器(ViewResolver)進(jìn)行視圖管理;頁面控制器/動作/處理器為Controller接口(僅包含ModelAndViewhandleRequest(request,response)方法)的實(shí)現(xiàn)(也可以是任何的POJO類);支持本地化(Locale)解析、主題(Theme)解析及文件上傳等;提供了非常靈活的數(shù)據(jù)驗(yàn)證、格式化和數(shù)據(jù)綁定機(jī)制;提供了強(qiáng)大的約定大于配置(慣例優(yōu)先原則)的契約式編程支持。圖2.1-1展示了SpringMVC模型視圖ModelAnView頁面控制器處理器視圖前端控制器圖2.1-1SpringMVC的請求處理流程7MyBatis是支持普通SQL查詢,存儲過程和高級映射的優(yōu)秀持久層框架。MyBatis消除了幾乎所有的JDBC代碼和參數(shù)的手工設(shè)置以及結(jié)果集的檢索。MyBatis使用簡單的XML或注解用于配置和原始映射,將接口和Java的P0J0s(Plain0ldJavaObjects,普通的Java對象)映射成數(shù)據(jù)庫中的記錄。MyBatis框架架構(gòu)講解:將SQL的配置信息加載成為一個MappedStatement對象(包括了傳入?yún)?shù)映射配置、執(zhí)行的SQL語句、結(jié)果映射配置),存儲在內(nèi)存中。(2)SQL解析:當(dāng)API接口層接收到調(diào)用請求時,會接收到傳入SQL的ID和傳入對象(可以是Map、JavaBean或者基本數(shù)據(jù)類型),Mybatis會根據(jù)SQL的ID找到對應(yīng)的MappedStatement,然后根據(jù)傳入?yún)?shù)對象對MappedStatement進(jìn)行解析,解析后可以得到最終要執(zhí)行的SQL語句和參數(shù)。(3)SQL執(zhí)行:將最終得到的SQL和參數(shù)拿到數(shù)據(jù)庫進(jìn)行執(zhí)行,得到操作數(shù)據(jù)庫(4)結(jié)果映射:將操作數(shù)據(jù)庫的結(jié)果按照映射的配置進(jìn)行轉(zhuǎn)換,可以轉(zhuǎn)換成HashMap、JavaBean或者基本數(shù)據(jù)類型,并將最終結(jié)果返回。2.3前端框架MiniUl、Bootstrap的特點(diǎn)MiniUI是一款優(yōu)秀的JS前端Web框架,提供豐富、強(qiáng)大的控件庫,能快速開發(fā)Web應(yīng)用軟件,是國內(nèi)知名的前端框架之一,可供.NET、Java、PHP等主流編程語言配合使用。使用MiniUI,開發(fā)者可以快速創(chuàng)建Ajax無刷新、B/S快速錄入數(shù)據(jù)、CRUD、Master-Detail、菜單工具欄、彈出面板、布局導(dǎo)航、數(shù)據(jù)驗(yàn)證、分頁表格、樹、樹形表格等典型WEB應(yīng)用系統(tǒng)界面。MiniUI具有易學(xué)易用、性能優(yōu)化、豐富控件、第三方兼容、瀏覽器兼容等突出優(yōu)點(diǎn),能縮短開發(fā)時間,減少代碼量,使開發(fā)者更專注于業(yè)務(wù)和服務(wù)器端,輕松實(shí)現(xiàn)8界面開發(fā),帶來絕佳的用戶體驗(yàn)。Bootstrap是一個基于Html、Css、JavaScript的快速開發(fā)Web應(yīng)用程序的網(wǎng)站的前端框架,開源的Bootstrap包含了功能強(qiáng)大的內(nèi)置組件,提供基于Web的訂制,為開發(fā)人員創(chuàng)建接口提供了一個簡潔統(tǒng)一的解決方案。但是由于Bootstrap只提供了相對基礎(chǔ)單一的組件,在搭建比較復(fù)雜的界面時會稍顯劣勢,所以本系統(tǒng)選擇將Bootstrap搭配成熟完整的MiniUI完成整套前端頁面的實(shí)現(xiàn)。2.4B/S架構(gòu)特點(diǎn)B/S架構(gòu)的全稱為Browser/Server,即瀏覽器/服務(wù)器結(jié)構(gòu)。Browser指的是Web瀏覽器,極少數(shù)事務(wù)邏輯在前端實(shí)現(xiàn),但主要事務(wù)邏輯在服務(wù)器端實(shí)現(xiàn),Browser客B/S架構(gòu)中,顯示邏輯交給了Web瀏覽器,事務(wù)處理邏輯在放在了WebApp上,這樣就避免了龐大的胖客戶端,減少了客戶端的壓力。因?yàn)榭蛻舳税倪壿嫼苌?,因此也被成為瘦客戶端?1)客戶端無需安裝,有Web瀏覽器即可。(2)BS架構(gòu)可以直接放在廣域網(wǎng)上,通過一定的權(quán)限控制實(shí)現(xiàn)多客戶訪問的目的,交互性較強(qiáng)。(3)BS架構(gòu)無需升級多個客戶端,升級服務(wù)器即可。9第3章系統(tǒng)需求分析3.1功能需求本系統(tǒng)的功能大致分為四大模塊:信息的展示、用戶對文件的基本操作、文件分享、文件在線預(yù)覽。(1)用戶進(jìn)入系統(tǒng)主頁,可以看到存儲在服務(wù)器上的文件以表格的形式分頁展示,同時可以看到文件的基本信息,包括文件存于數(shù)據(jù)庫的id,文件名,文件的大小,文件類型,文件屬性,文件被分享的次數(shù)和上傳的時間。(2)提供對用戶上傳的文件分類展示的功能。(3)提供管理員進(jìn)入系統(tǒng)之后,可以看到用戶的基本信息,包括身份信息,空間使用情況,用戶所擁有的文件數(shù)量等的功能。3.1.2用戶對文件的基本操作的功能(1)提供用戶上傳文件的功能(2)提供用戶下載文件的功能(3)提供用戶刪除文件的功能(4)提供用戶對上傳的文件重新命名的功能,當(dāng)文件的新名與服務(wù)器上已存在的文件重名時,提醒用戶重命名失敗。(5)提供用戶搜索文件的功能,支持模糊搜索。3.1.3文件分享提供用戶分享文件的功能,且支持兩種類型的分享:私密分享和公開分享,其他系統(tǒng)外的用戶可以通過鏈接下載文件。提供用戶在線預(yù)覽文件的功能,預(yù)覽文件的類型包括:圖片、文檔、音樂和視頻,此四種類型之外的文件不支持在線預(yù)覽。3.2用戶界面需求(1)要求有簡潔大方的界面風(fēng)格,數(shù)據(jù)展示清楚明了。(2)界面友好,當(dāng)用戶與系統(tǒng)發(fā)生交互時,有適當(dāng)?shù)牟僮魈崾拘畔ⅰ?3)用戶體驗(yàn)好。3.3性能需求3.3.1系統(tǒng)的可靠性和安全性對系統(tǒng)應(yīng)該設(shè)計出盡可能詳盡的故障處理方案,從而保證系統(tǒng)的快速恢復(fù)性。并采用允余技術(shù)保證系統(tǒng)可靠運(yùn)行、數(shù)據(jù)可靠存儲。可以對系統(tǒng)運(yùn)行情況采用自動檢測、告警、監(jiān)控等方式進(jìn)行實(shí)時觀測。在系統(tǒng)使用過程中,由于硬件出現(xiàn)故障或其他原因造成系統(tǒng)暫時性的中斷后系統(tǒng)重啟時,能夠保證系統(tǒng)將原有的數(shù)據(jù)快速恢復(fù),使其繼續(xù)下去。3.3.2系統(tǒng)的易用性和易維護(hù)性系統(tǒng)是直接面對使用人員的,而使用人員往往對計算機(jī)并不是很熟悉,這就要求系統(tǒng)能夠提供友好的用戶界面,簡單易用的人機(jī)交互界面。要實(shí)現(xiàn)這些,系統(tǒng)應(yīng)盡量使用戶熟悉的術(shù)語以及中文信息的界面;界面應(yīng)友好,方便用戶的使用,在界面上,用戶可以使用一些圖標(biāo),指示性的提示,驚醒相對應(yīng)的操作。系統(tǒng)中所涉及的數(shù)據(jù)是我們統(tǒng)計中相當(dāng)重要的信息,系統(tǒng)需要要提高方便可行的手段讓系統(tǒng)維護(hù)人員進(jìn)行數(shù)據(jù)的備份、日常的安全管理、系統(tǒng)意外崩潰時數(shù)據(jù)的恢復(fù)等工作。3.4系統(tǒng)運(yùn)行環(huán)境3.4.1硬件平臺CPU:P41.8GHz3.4.2軟件平臺4.1系統(tǒng)總體說明4.1.1主要業(yè)務(wù)功能劃分本系統(tǒng)的主要業(yè)務(wù)功能從橫向上可以分為普通用戶模塊和管理員模塊,普通用戶模塊在本次設(shè)計中占的比重比較大,而在普通用戶模塊上,重要業(yè)務(wù)功能縱向劃分為四個大的部分:文件展示、文件基本操作、文件分享、文件在線預(yù)覽。圖4.1.1為具查看用戶信息查看用戶信息√查看個人信息預(yù)覽文件查詢文件重命名文件分享文件刪除文件下載文件上傳文件業(yè)個人中心文件管理圖4.1.1系統(tǒng)功能結(jié)構(gòu)圖4.2技術(shù)關(guān)鍵點(diǎn)考慮4.2.1用戶登錄驗(yàn)證并跳轉(zhuǎn)當(dāng)已注冊用戶輸入用戶名密碼點(diǎn)擊登錄時,需要向服務(wù)器端發(fā)送Ajax請求,服務(wù)器端根據(jù)用戶名密碼匹配,并將結(jié)果返回給前端,前端根據(jù)信息決定是報錯、跳轉(zhuǎn)用戶界面、跳轉(zhuǎn)管理員界面,且考慮到系統(tǒng)需要在之后的操作中一直需要拿到用戶信息,所以需要在登錄的同時將用戶信息存入session,方便拿取。交互如下圖所示:瀏覽器界面瀏覽器界面用戶名密碼獲取用戶名密碼用戶名≤無對應(yīng)信息-<發(fā)送普通用戶界面請求username戶界面戶信息比對用戶信息顯示用戶名顯示管理員<<圖4.2.1登錄驗(yàn)證序列圖4.2.2上傳文件到服務(wù)器將文件信息上傳到Tomcat服務(wù)器的方法有很多種,傳統(tǒng)方法是使用文件流方式讀取文件內(nèi)容,并使用字節(jié)流保存,但是比較麻煩的是需要手動關(guān)閉流,如果沒有關(guān)閉,將會引起不必要的麻煩。所以本系統(tǒng)擬采用封裝好的工具類common.io的方式實(shí)現(xiàn)文件的上傳下載。同時,按照整個系統(tǒng)的設(shè)計,上傳文件的時候除了要將文件保存在服務(wù)器,還要提取文件的相關(guān)信息保存在數(shù)據(jù)庫,這些相關(guān)信息包括:文件名、文件大小、文件類型、文件上傳時間以及手動為文件設(shè)置提取碼??紤]到后期系統(tǒng)用戶有可能會在線預(yù)覽文件,所以在上傳文件的同時,將后綴名為.doc.docx.txt轉(zhuǎn)換為pdf文件。交互如用戶一文件流-接收文件流保存文件到服務(wù)器并生成pdf文件信息添加記錄刷新界面展示圖4.2.2上傳文件序列圖4.2.3文件分享以百度網(wǎng)盤為例,文件分享模塊一般分為兩個部分,公開分享和私密分享,且都是通過鏈接的形式,對于其他用戶而言,獲取文件的公開分享鏈接,即可打開瀏覽器直接下載文件,而獲取文件的私密分享鏈接,打開瀏覽器進(jìn)入的是輸入提取碼頁面,必須輸入正確的提取碼才可以下載該文件,否則將無法完成下載。交互如下圖所示:(備注:當(dāng)用戶點(diǎn)擊的是獲取公開鏈接時,圖中帶*的交互不會執(zhí)行)用戶服務(wù)器數(shù)據(jù)庫<判斷是否選中輸入分享鏈接(提取碼)鏈接(提取碼)取碼文件分享圖4.2.3文件分享序列圖4.2.4文件在線預(yù)覽文檔類型的文件在線預(yù)覽的原理是將先文件轉(zhuǎn)換成pdf格式,再使用H5的embed標(biāo)簽進(jìn)行展示,embed標(biāo)簽的功能十分強(qiáng)大,甚至可以展示圖片和視頻音頻,本系統(tǒng)也是采用這種方式來實(shí)現(xiàn)圖片的視頻音頻類文件的在線預(yù)覽的。對于文檔類型的文件(其中包括后綴名為.doc.docx.txt的文件)而言,在用戶點(diǎn)擊預(yù)覽的時候,展示的其實(shí)是與此文件對應(yīng)的pdf文件,本系統(tǒng)采用Xdoc庫里面的方法將這種類型的文件轉(zhuǎn)換成pdf格式的文件,由于轉(zhuǎn)換需要一定時間,所以在用戶上傳文檔類型的文件時,就同時進(jìn)行轉(zhuǎn)換,這樣得以保證,用戶在預(yù)覽文件時,界面迅速做出反應(yīng)。4.2.5圖片文件的展示文檔、視頻、音頻以及其他類型的文件展示都是通過表格形式表現(xiàn)的,但是圖片作為一種直觀的文件,如果采用表格形式展示,在用戶體驗(yàn)上效果比較差,本系統(tǒng)在設(shè)計圖片的展示上,借鑒百度網(wǎng)盤的方法,按照圖片上傳的時間順序,使用可折疊的樣式將圖片展示。圖4.2.4為百度網(wǎng)盤展示圖片的示例圖:2017年04月14日2017年04月14日3實(shí)習(xí)(實(shí)訓(xùn))報告書2017年04月13日6張2017年04月12日2017年04月12日6圖4.2.4百度網(wǎng)盤圖片展示示例圖要實(shí)現(xiàn)按照時間展示圖片的功能,必須將時間以及該時間下所有的圖片封裝成一個類,當(dāng)從數(shù)據(jù)庫將所有圖片文件都拿出來后,將所有圖片對應(yīng)的時間拿出來,使用hashSet去重后,循環(huán)所有圖片文件,當(dāng)時間是相同的,則放入相同的類里面,前端遍歷list取出來。4.3數(shù)據(jù)庫設(shè)計4.3.1數(shù)據(jù)庫闡述數(shù)據(jù)庫的設(shè)計通常是以一個已經(jīng)存在的數(shù)據(jù)庫管理系統(tǒng)為基礎(chǔ),常用的數(shù)據(jù)庫管理系統(tǒng)有Access、SQLServer、Oracle、MySQL等。根據(jù)用戶需求和系統(tǒng)分析,本系統(tǒng)采用了MySQL數(shù)據(jù)庫管理系統(tǒng)。在MySQL中建立名稱為mydisk的數(shù)據(jù)庫。用戶信息表:user字段名數(shù)據(jù)類型是否為空是否為主鍵描述否是編號usernamevarchar否否用戶名passwordvarchar否否密碼varchar否否注冊時間否否文件數(shù)量varchar否否空間容量usedvarchar否否空間使用量usertypevarchar否否用戶類型varchar否否登錄系統(tǒng)時間標(biāo)注:usertype分為管理員和普通用戶。在數(shù)據(jù)表中,0為普通用戶,1為管理員。文件信息表:file字段名稱數(shù)據(jù)類型是否為空是否為主鍵字段描述否是文件或文件夾編號否否文件名否否上傳時間否否大小否否保存在服務(wù)器的絕對路徑否否所屬用戶id否否文件類型否否被分享次數(shù)否否文件是共享類型還是私密類型否否上傳時間否否提取碼用于記錄文件是否共享,若共享,則為0,加密則為1.在用戶發(fā)出下載或者刪除命令時,首先判斷是否有權(quán)限進(jìn)行此操作。圖4.3.1為兩張表之前的界面化視圖,其中圖4.3.1為兩張表之前的界面化視圖,其中file表的userid為外鍵,關(guān)聯(lián)user表的id:filenamevarcharlfile_type.varchar(5file_propertyvarch.parent_folder_idintshare_num;int圖4.3.1表格的界面化視圖file_numintvolume.varchar(30) usedvarchari30)size.varchar(30)第5章系統(tǒng)的實(shí)現(xiàn)移動端用戶移動端用戶系統(tǒng)管理員企業(yè)郵件云服務(wù)器外網(wǎng)應(yīng)用服務(wù)器置消息服務(wù)器數(shù)據(jù)庫服務(wù)器日志服務(wù)器文件服務(wù)器5.2功能實(shí)現(xiàn)5.2.1用戶登錄界面用戶在登錄界面輸入用戶名、密碼,密碼要求是五位數(shù)字以上,如果少于5位,密碼輸入框會有提示,這個驗(yàn)證是前端直接做的。用戶輸入后,會出現(xiàn)四種情況:密碼輸入錯誤,出現(xiàn)密碼錯誤的提示;用戶未注冊,提示用戶注冊;用戶類型是普通用戶,進(jìn)入普通用戶界面;用戶類型是管理員,跳轉(zhuǎn)進(jìn)入管理員界面。圖5.2-1登錄界面5.2.2用戶主界面當(dāng)用戶類型為普通用戶時,跳轉(zhuǎn)到主界面,表格以分頁的形式展示用戶上傳到系“其他”五個類型,用戶可分別對這五個類型的文件進(jìn)行操作。圖5.2-2為普通用戶當(dāng)用戶類型為管理員是,跳轉(zhuǎn)到管理員主界面,以表格的形式展示當(dāng)前系統(tǒng)用戶的信息,由于管理員的模塊不是本系統(tǒng)的主要模塊,所以設(shè)計得比較簡單。圖5.2-3為管理員用戶主界面。歡進(jìn)進(jìn)入個人網(wǎng)盤系統(tǒng)wa文并管凝出#世樓B件易姓小1課技來來)124.050并零文序加6-12222曾縣注人能522.9H模殊料翠型體D206-12J電.號g29.5i圖成并型實(shí)體2016-122*文檔并程空件2016-127去是200F-dia10.67g交替并率文件02026-1729災(zāi)樣并稱實(shí)件B24001220日圖片并章文件20161229并章文件2000-12227圖片211624烈種書摩歡序2006-220在2m0-1220m文22件如學(xué)工件2006-122422ng面種#文件12016-178BHH施#7件2006-1229第15?判姓項(xiàng)45梨并填菌個A中bvrt1125個人同登收有圖5.2-2普通用戶主界面?zhèn)€人網(wǎng)盤管理員界面?zhèn)€人網(wǎng)盤管理員界面全章雨中用F名鋼詞已能用主同上整都12015-09.12(0:2-83語楊揚(yáng)55355279.08范門班-2020:2512016-074222:22:22E2016-42-022272:225ggang5232322016-02422212227201642-022222;222116-020222:22:22MB2016-02-1222:22:223331332616-0202221122:2200M82016-42-6222:22:222016-2022227:2219E2016-2-0222:22:279雞克力99990992016-02-4222:22222016-02-0212:2262當(dāng)用戶點(diǎn)擊上傳按鈕時,跳出上傳界面。(注:在主界面放兩個上傳按鈕是為了便于對比,第一個上傳按鈕被點(diǎn)擊時,直接調(diào)出上傳頁面,點(diǎn)擊打開即是上傳,第二個上傳按鈕需要中間頁面,用戶體驗(yàn)不好。)歡油進(jìn)入個人網(wǎng)世系統(tǒng)歡油進(jìn)入個人網(wǎng)世系統(tǒng)解直開查0旗春1WμeHm**hithemg得扣預(yù)m:B單R1512*1m*1*251028FAn0yH野射P60E85.2.4下載文件界面當(dāng)用戶點(diǎn)擊下載按鈕時,跳出上傳界面。(注:暫時只支持下載單個文件,當(dāng)選取的文件個數(shù)不等于1的時候,將會跳出提示,只有在正確的數(shù)目下才可以跳出下載界面)歡論進(jìn)A個人網(wǎng)盤系紙歡論進(jìn)A個人網(wǎng)盤系紙主文件上強(qiáng)N#*t##家度#家交件Tsn#*7##TH#蓋專人中心0P算上部42#m8243btsH而0151*12×*21.2hm@型n開用#I上呼A#2#姓盛#045.2.5刪除文件界面當(dāng)用戶點(diǎn)擊刪除按鈕時,跳出刪除界面。(注:暫時只支持刪除單個文件,當(dāng)選取的文件個數(shù)不等于1的時候,將會跳出提示,只有在正確的數(shù)目下才可以下載)。貴上傳中上傳下載×島分事√重命名卷編號文性名文件太小文料類型文件勝被分享次數(shù)立該統(tǒng)末來1網(wǎng)329.00×3圖共事文件夏目友人殊5,mp4視頻井事文件在面老奧要1號圖片共事文件面基于Sa/mgHvtxlocalhost8080上的網(wǎng)頁顯示:共事文件2我是200共章文件0確后表除選干記最?共事女件國4共事女件0確定南共事文件l共事文件章9片共事文件面畢業(yè)及計額要設(shè)計.00c文擋共事文件在文本交件共事文件0面圖片共事文件1更愛塑輯田鎮(zhèn)葵atm04祝頻共事女件圍7要一,m03量樂共享女件2當(dāng)用戶點(diǎn)擊重命名按鈕時,跳出重命名界面,有遮罩層效果。至部文件至部文件上過四可百司數(shù)清共事文件#基文P并家黨件#*2P其零又作畢且進(jìn)計組要證計4*至要接4并家興件具蘋京體#章之件共零文件整日龍)噸5.m1,村陽21:F5交姓大小322.i0i8其本文件#發(fā)#考型圖到編出4607電蓋文件繼出老R章2刷薪分零下日真m2285.2.7分享文件界面當(dāng)用戶點(diǎn)擊分享按鈕時,跳出分享界面,有遮罩層效果。全部交樣土值上維下X糖章重生府分生成下軟研措,然后要制礎(chǔ)摘配成Q群解在如要分讀區(qū)1量1球族未央1JD9共維交件制共球文件并理左自B并章文件共章文門#*主球從開健理艾件出出良立們放對草主費(fèi),林地人排被查卷主林利樂做律只利分鄧行古經(jīng)新到,同的八都商了到#稱定件共理也片礎(chǔ)#文片共指交作U加種理堂件刀共維文M共排文件1安力解由位等tmp*21.970流師共型文自r年一32.4*S樂并度文產(chǎn)?5.2.8搜索文件界面當(dāng)用戶在輸入框里面輸入想要搜索的文件的關(guān)鍵字,點(diǎn)擊搜索按鈕,搜索的結(jié)果將在表格中顯示出來,支持模糊搜索。全交件上黃魯上角下套X總分等重命名盛新曹歡戶普進(jìn)□號文件名宜件大文件共型文井屬基分享重上期詞80蓄水19圖時#享立件E2616-12-30230,雙K3共事文件2026-12.3042378共事文件B2016-12-3038588圖#井事文件12016-12-30□8*喜(51g5269N8圖片#事交件B20.6-12-30443.57K3圖##享文件b2016-12-10圖片#享姓在2016-12309喜8jg35.80*8圖片共享文件日2616-1230路喜x9955:.908圖時#享立樣12016-12-305.2.9圖片展示界面當(dāng)用戶點(diǎn)擊側(cè)邊欄中的“圖片”一欄時,可顯示圖片的tab,頁面中,圖片按照上傳的時間分類(圖5.2-10),單擊圖片即選中,雙擊圖片即預(yù)覽圖片(圖5.2-11)。麟圖5.2-10圖片展示界面而面師m第日鐘歡地連入個人師曲燃5.2.10文檔展示界面當(dāng)用戶點(diǎn)擊側(cè)邊欄中的“文檔”一欄時,可顯示文檔的tab,頁面中,文檔以表格的形式展示,可對文檔進(jìn)行下載、分享、刪除、查看操作。圖5.2-12為文檔的展示界面(由于視頻、音樂的展示與此類同,所以在下文中將不再單獨(dú)對視頻和音樂的展示界面截圖),圖5.2-13為文檔的預(yù)覽界面。圖文構(gòu)2蟹號空檔名又自大中基分要文數(shù)上#時碼昏作算基于mg技礎(chǔ)10回是《曲*20t0.=10.02K801h320是式曲均uiE016⑥之之前圖5.2-12文檔展示界面文檔預(yù)覽x2013年第22卷第22013年第22卷第2期摘要:給用戶提供網(wǎng)絡(luò)存儲是許多應(yīng)用所需要的功能.討論了利用SpringMVC實(shí)現(xiàn)該功能的解決辦法.可以讓用戶在網(wǎng)絡(luò)空間下自由建立子目錄、上傳文件,實(shí)現(xiàn)目錄和文檔的在線管理。有效解決了目錄名和文件名的漢字編碼轉(zhuǎn)換問題,以及當(dāng)前目錄路徑標(biāo)識中斜杠符導(dǎo)致的UR1匹配問題,該應(yīng)用已用于網(wǎng)絡(luò)教學(xué)系統(tǒng)中學(xué)生個人空間和小組空間的信息保存,為小組協(xié)作學(xué)習(xí)提供了基礎(chǔ).Abstract:Networkstorageprovidedforuseristheusefulfunctionformanyapplication.ThepaperdiscussthesolutionsvstemeffertivelvsolvesthenrohlemoftheChinesecharacterscodinpconversionahoutdirectorvnameandfilename圖5.2-13文檔預(yù)覽界面5.2.11音樂展示界面當(dāng)用戶點(diǎn)擊側(cè)邊欄中的“音樂”一欄時,可顯示音樂的tab。圖5.2-14為音樂的預(yù)覽界面。監(jiān)樂播放285.2.12視頻展示界面當(dāng)用戶點(diǎn)擊側(cè)邊欄中的“視頻”一欄時,可顯示視頻的tab。圖5.2-15為視頻的預(yù)覽界面。×5.2.13其他文件展示界面當(dāng)用戶點(diǎn)擊側(cè)邊欄中的“其他”一欄時,可顯示其他文件的tab。圖5.2-16為其他文件的展示界面(注:其他類型的文件不提供在線預(yù)覽的功能)。金第定件文約報其出2編碼文得名交檔表小第升軍文費(fèi)上ffn粉作taitnnansak4m12擊付所中圖用寫基,nht1.Dg112.選啦酒單檔華三作障選心迎事件托m5*四體縣類4也當(dāng)用戶獲取文件的私密鏈接時,會出現(xiàn)輸入提取碼提取文件的頁面。請輸入提取碼提取文件!5.2.15用戶個人信息展示界面當(dāng)用戶點(diǎn)擊查看個人信息時,會跳轉(zhuǎn)到個人信息的展示頁。2mE年A00:C2F*CF密碼:11281128牌#注冊時間:2016-09-1209:39:48存儲容量:1CB上次登錄時間:2017-04-1819:31:03圖5.2-18查看個人信息界面5.3關(guān)鍵代碼分析上傳文件總共有一下四個需要注意的點(diǎn):(1)點(diǎn)擊“上傳”按鈕直接調(diào)出上傳頁面,這個調(diào)出的過程瀏覽器直接調(diào)出的,但是上傳界面體驗(yàn)性不好,所以在本系統(tǒng)中,采取下面巧妙的方法,使得用戶點(diǎn)擊上傳界面的“打開”按鈕,就可直接上傳文件。<formmethod="post"action="/mydisk/upLoad"enctype="multipart/form-data"><aclass="mini-button"iconCls="icon-upload"plain="true"><inputid="myBtn"type="button"onmousemove="move(event)"value="上傳"size="30"<inputtype="file"id="myfile"onchange="this.form.submit()"name="myfile"style="position:absolute;filter:alpha(opacity=0);opacity:0;width:30px;"size="1"/></form>(2)上傳文件時,需要獲取文件的大小,并且按照B、KB、MB、GB的形式展示,這就需要自己寫類的方法實(shí)現(xiàn),所以將計算文件大小的方法封裝成兩個類,第一個用于將byte轉(zhuǎn)換成B,第二個將字符串類型的B轉(zhuǎn)換成byte。方法一:String[]test={"B","KB","MB","GB","TB"};floatmysize=0;if(size<1024){returnsize+"B";while(size>=1024){mysize=(float)(1.0*size/1024);DecimalFormatdecimalFormat=newDeciStringp=decimalFormStringsubstring1=str.substring(StringstrArr[]={"KB","MB","GB","TBwhile(>=0){elseif(flag==0){substring2=str.substring(str.length()-1);substring1=str.substring(0,str.length()-1);size=Float.parseFloat(substring1);returnsize;return0;(3)將文件保存在服務(wù)器上//如果用的是Tomcat服務(wù)器,則文件會上傳到1%TOMCAT_HOME%\\webappsllYourWebProjectlWEB-INF\lupload\文件夾中//StringrealPath=request.getSession).getServletContext().getRealPath("/WEB-INF/upload");StringrealPath="C/Users/xyy/Desktop/畢業(yè)設(shè)計/miniui/WebContent/upload";//這里不必處理IO流關(guān)閉的問題,因?yàn)镕ileUtils.copyInputStreamToFile()方法內(nèi)部會自動把用到的IO流關(guān)掉。FileUtils.copyInputStreamToFile(myfile.getInputStream(),newFile(realPath,myfile.getOriginalFilename)));(4)將后綴名為.txt.doc.docx的文件轉(zhuǎn)換成.pdf格式的文件。Stringfilename=file.getFilename();Stringname=filename.substring(0,filename.indexOf("."))+".pdf";//如果文件后綴名為doc或者docx,則使用XDoc將docdocx轉(zhuǎn)換成pdf展示if(str.equals(".txt")||str.equals(".doc")|lstr.equals(".docx")){XDocServiceservice=newXDocService)try{e.printStackTrace();}5.3.2下載文件下載文件是使用的IOUtils的copy方法,同時要設(shè)置response的ContentType并response.reset();response.setContentType("application/octet-stream;charset=utf-8");StringfileName=newString(file.getName().getBytes("utf-8"),"ISO-8859-1");response.setHeader("Content-Disposition","attachment;filename="+fileName);IOUtils.co
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025廣告合作經(jīng)營合同
- 商業(yè)計劃書撰寫與助學(xué)貸款申請技巧
- 課題申報參考:流域與特殊地理區(qū)域生態(tài)環(huán)境保護(hù)法律問題研究
- 科技醫(yī)療的發(fā)展趨勢及挑戰(zhàn)
- 未來工作趨勢與職業(yè)路徑規(guī)劃的思考
- 室內(nèi)模擬射擊與射箭場設(shè)備出租考核試卷
- 2025年新世紀(jì)版九年級歷史下冊階段測試試卷含答案
- 2025年湘師大新版八年級地理下冊月考試卷含答案
- 2025年新世紀(jì)版選修6歷史下冊月考試卷含答案
- 2025年人民版必修3歷史下冊月考試卷含答案
- 課題申報書:GenAI賦能新質(zhì)人才培養(yǎng)的生成式學(xué)習(xí)設(shè)計研究
- 2024年江蘇省中醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點(diǎn)附帶答案
- 駱駝祥子-(一)-劇本
- 全國醫(yī)院數(shù)量統(tǒng)計
- 《中國香文化》課件
- 2024年醫(yī)美行業(yè)社媒平臺人群趨勢洞察報告-醫(yī)美行業(yè)觀察星秀傳媒
- 第六次全國幽門螺桿菌感染處理共識報告-
- 天津市2023-2024學(xué)年七年級上學(xué)期期末考試數(shù)學(xué)試題(含答案)
- 經(jīng)濟(jì)學(xué)的思維方式(第13版)
- 盤錦市重點(diǎn)中學(xué)2024年中考英語全真模擬試卷含答案
- 背景調(diào)查報告
評論
0/150
提交評論