計算機科學與技術-基于方欣ICAP服務的WIKI文檔管理系統_第1頁
計算機科學與技術-基于方欣ICAP服務的WIKI文檔管理系統_第2頁
計算機科學與技術-基于方欣ICAP服務的WIKI文檔管理系統_第3頁
計算機科學與技術-基于方欣ICAP服務的WIKI文檔管理系統_第4頁
計算機科學與技術-基于方欣ICAP服務的WIKI文檔管理系統_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第1章緒論1.1系統開發(fā)的背景和意義1.1.1WIKI文檔管理系統開發(fā)的背景分析考慮到在企業(yè)運營中,肯定會產生大量的文字、數據等知識文檔,且這些知識文檔都是對公司非常重要的知識價值。在企業(yè)內部,由于各部門、各區(qū)域的工作內容各不相同,所以會產生不少屬于各自部門的知識文檔,如各自部門的工作標準、制度、使用手冊等知識文檔,而這些知識文檔都處于分散的狀態(tài),沒有一個統一的管理,如此一來,這些擁有非常高參考價值的知識文檔將無法被企業(yè)內部的其它員工所瀏覽和借鑒。若能讓員工們充分地利用這些知識文檔,毫無疑問,這將會提升員工們的工作效率,從而更好地促進企業(yè)的發(fā)展。而構建企業(yè)自身的知識庫,正是解決這些問題的好方式。構建知識庫,是對企業(yè)的知識文檔進行大規(guī)模的整理,按一定的分類儲存這些知識文檔,并且提供有效、迅速的搜索手段,使得分散、凌亂的企業(yè)文檔變得有序。知識庫加快知識文檔的流動性和分享性,有利于知識文檔在企業(yè)內部中傳播。在知識庫中,知識文檔具有公開性,可供企業(yè)內部其它員工瀏覽,員工們可根據自身需求搜索并瀏覽自己想要查看的知識文檔,從而提高工作效率。故開發(fā)一個WIKI文檔管理系統,對這些知識文檔進行有效地管理和合理利用,幫助企業(yè)有效儲存一些重要的知識文檔,方便企業(yè)員工使用,使得企業(yè)的知識更容易形成一個體系,便于再次利用,這體現知識的延續(xù)性,隨著知識的不斷更新、完善,企業(yè)就構建出了自己的知識庫。1.1.2本課題的研究意義在信息技術如此發(fā)達的時代,企業(yè)構建知識庫,形成自己的知識體系已是社會趨勢,本文以企業(yè)內部的知識庫構建為實際背景,考慮企業(yè)實際的需求,分析企業(yè)需要儲存的知識文檔類型,開發(fā)一款適合企業(yè)內部使用的知識庫系統,以此來加強企業(yè)內部對知識文檔的管理,方便企業(yè)內部員工的工作任務,隨著企業(yè)自身知識庫的不斷更新、延續(xù),知識庫還將成為企業(yè)自身獨特的文化。1.2國內外研究現狀1.2.1國內研究 國內對于知識庫的認識,目前還存在著廣義和狹義之分。狹義的知識庫,主要是指儲存知識的集合。而廣義的知識庫,則包含狹義的知識庫在內的部分,泛指知識庫系統。吳丹[1]等認為知識庫是以描述性質的方法儲存和管理知識的機構,由知識和知識處理機構共同構成,是對廣義知識庫較好的解釋。對于知識庫的構建研究,這些研究主要集中在構建原則、知識庫中的知識檢索、知識組織、知識庫整合等方面,這些研究的結果直接決定了知識庫構建的可行性。李賀等[2]也就企業(yè)知識倉庫的構建和設計進行了研究。知識庫是知識庫系統中非常關鍵的部分,知識庫系統的核心部分是知識庫和推理過程[3]。知識庫能否發(fā)揮作用,必須依賴于知識庫系統。所以構建知識庫,也即同構建知識庫系統具有重疊之處。關于知識庫具體的實踐應用研究。吳長彬等[4]從數據—知識—應用三個層次對國土資源進行了深度的挖掘和分析,建設了國土資源知識庫,并給出了知識庫應用于國土資源綜合分析系統的實例。韓海濤等[5]則構建了面向天津市濱海新區(qū)服務的知識倉庫。關于維基(WIKI)系統中知識庫的研究。WIKI是一種支持多人協作的超文本寫作工具,具有開放性、協作性等特點,具有協同創(chuàng)作、彈性分類、自動索引等優(yōu)點,被人們廣泛接受。它是一種開放的知識協作工具,利用WIKI構建知識庫,所有人都可參與到知識庫的建設中。1.2.2國外研究 國外對知識庫的研究最早是在研究專家決策系統基礎上進行的,隨著人工智能技術的成熟和發(fā)展,對于知識庫的研究也不斷成熟。對于知識庫的概念認識、框架和結構、知識庫中運用的技術和方法以及知識庫在不同領域的應用均有較為深入的研究。關于知識庫使用的必要性研究。澳大利亞學者Dong-TsanLee等[6]論述了在科學知識方面逐漸呈現出構建大規(guī)模知識庫的發(fā)展趨勢。在這樣的知識庫中,重要的不是使所有的知識之間都有密切的相互關系,而是要能夠確定與當前問題有關的知識。關于知識庫基本結構和基本理論的研究。GrigorisAntoniou[7]研究了知識庫的結構,應該包含規(guī)則庫R(是一系列有限的規(guī)則)、缺省的規(guī)則庫D(包含多個默認缺省)和聲明集(Adeclarationset)DêC,它主要包含目標文字的設置G、輸入文字的設置Z和一些限制的設置C。AndrejaAndric′等[8]討論了知識庫知識存儲和輸出格式,針對知識庫對知識反饋要求較大的內存消耗問題,將整個知識庫轉化成一系列HTML文本,使內存達到可接受的程度,正如萬維網(WWW)可接受來自世界各個地方的同時訪問以及對同一問題的多次訪問,萬維網(WWW)的這一工作機制可以被運用于知識庫中。關于知識庫在不同領域的應用研究。隨著知識庫相關理論和技術的成熟,知識庫在不同領域的應用逐步普及。韓國學者KimJeong-Hyen等[9]研究了圖書館學領域中,使用冒號分類法的分面分類原則(CC)的自動分類知識庫的設計。ChangKyuPark等[10]論述了知識庫對服裝制造行業(yè)的促進作用,通過使用知識庫可以搜索到最佳工藝條件,從而開發(fā)出高品質的成衣制造。1.2.3總結 由于我國對知識庫的研究起步較晚,導致知識庫在國內的遍及程度遠遠不及國外的遍及程度。目前國內關于知識庫的研究雖然在不斷成熟,應用領域也在不斷拓展,但是關于知識庫的相關理論、技術、方法的研究,國內學者的成果少,多是學習和借鑒國外關于知識庫方面的研究成果,研究的深度還不夠。為促進知識庫在國內的實踐,工作者還需在以下三個方面不斷加強:一是加強對知識庫的基礎理論研究;二是不斷加強技術研究,探索知識庫構建的主要技術與系統的開發(fā)方法;三是應用研究,從整體角度分析知識庫的實施辦法和相應的實現保障。1.3課題研究內容 WIKI文檔管理系統主要研究在企業(yè)辦公時通過個人辦公電腦打開瀏覽器即可進入系統的Web端。系統的總體目標有以下方面:一方面可以方便企業(yè)員工在辦公時快速地進入到知識庫,提供平臺和方式讓員工可以發(fā)布知識和交流知識,將知識文檔儲存到知識庫中。另一方面,經過員工們對系統的使用,為知識庫不斷提供新的知識文檔,同時可以對不夠完整的知識文檔進行更新和完善,將知識延續(xù)下去,逐漸地壯大系統中的知識內容,形成一個富有個性的知識體系,為企業(yè)構建出一個屬于自己的知識庫。為了實現以上目標,本系統的研究內容主要分為以下方面:首先為員工服務,提供前臺知識庫平臺,企業(yè)員工在此平臺發(fā)布知識、交流知識,還提供知識檢索的功能,讓員工們可以快速找到需要的知識文檔。然后是為企業(yè)服務,提供后臺知識庫管理系統,給予企業(yè)知識庫的管理者權限,管理者可以在后臺對知識庫系統進行總體管理,確保知識庫系統的正確運行和正確使用。1.4系統開發(fā)環(huán)境與開發(fā)工具 本系統使用面向對象的開發(fā)方法,使用JAVA編程語言進行開發(fā),后臺方面使用了方欣ICAP服務下集成的Springboot框架,以MySQL作為系統的數據庫,使用了Mybatis作為持久層框架,前端展示方面各使用到了LayUI、Vue、Bootstrap的部分功能,另外還使用了UEditor富文本編輯器,以上環(huán)境將作為系統的開發(fā)環(huán)境。使用idea作為系統的開發(fā)工具,Navicat作為數據庫管理工具,以上工具將作為系統的開發(fā)工具。第2章WIKI文檔管理系統的需求分析2.1系統總體需求WIKI文檔管理系統主要包括前臺知識庫平臺和后臺知識庫管理系統。前臺知識庫平臺供企業(yè)員工使用,實現知識文檔內容發(fā)布,發(fā)布的內容是公開的,方便企業(yè)內其他員工在本系統內在線瀏覽,并且可對知識文檔進行評論和發(fā)表自己的意見,而發(fā)布者可以對評論(意見)進行采納操作,對自己的知識文檔進行修改、完善。后臺知識庫管理系統,系統的管理員可以對系統進行管理、維護,可以管理系統的知識類別、知識文檔、知識的評論管理,還有系統的用戶管理、系統的管理員管理,以及系統的統計信息等。隨著使用該系統的時間推移,逐漸地壯大系統中的知識內容,形成一個富有個性的知識體系,為企業(yè)構建出一個屬于自己的知識庫。WIKI文檔管理系統的模塊圖如圖2.1。圖2.1WIKI文檔管理系統模塊圖2.2系統業(yè)務需求以下是對前臺知識庫平臺和后臺知識庫管理系統的業(yè)務需求分析。2.2.1前臺知識庫平臺業(yè)務流程 企業(yè)員工用戶進入進入前臺知識庫平臺。首先到達首頁-熱門知識界面,顯示最新發(fā)布的知識文檔列表,點擊列表項將跳轉到對應知識文檔的詳情頁。另外,頁面頂部還有導航菜單,包括我的知識、知識列表、發(fā)布知識、登錄、注冊,或者個人中心(已登錄狀態(tài)將顯示個人中心,未登錄狀態(tài)顯示登錄、注冊)。導航菜單中的登錄、注冊(或個人中心)。①登錄按鈕跳轉到登錄界面,②注冊按鈕跳轉到注冊界面,③個人中心則跳轉到個人中心界面,此界面顯示當前登錄用戶的基本信息,點擊修改信息可對個人基本信息進行修改。④若當前系統無用戶登錄,則顯示登錄與注冊按鈕,若已有用戶登錄則顯示登錄個人中心按鈕,以及顯示登錄用戶的頭像。導航菜單中的我的知識,跳轉到我的知識界面(此跳轉需先進行登錄,若未登錄將跳轉到登錄界面),可顯示當前登錄用戶所發(fā)布過的所有知識文檔信息,這些知識文檔信息分為以下4個狀態(tài):無評論、已評論、已采納、已關閉的狀態(tài)。在無評論、已評論、已采納狀態(tài)下的知識文檔信息,當前登錄者可對這三個狀態(tài)下的知識文檔進行修改,或是進行關閉知識的操作,關閉后的知識將無法進行修改,也不具有公開性,無法被其它用戶所查看。另外,4個狀態(tài)下的知識,都可以通過查看詳情按鈕,跳轉到知識詳情頁。導航菜單中的知識列表,跳轉到知識列表頁,顯示所有公開的知識文檔,此界面提供便捷的類別樹搜索、知識標題搜索、知識內容搜索的功能。點擊知識文檔中的頭像可跳轉到對應用戶的用戶詳情頁,點擊知識文檔中的標題,將展開此知識文檔的內容,點擊知識文檔中的評論按鈕可跳轉到對應知識的知識詳情頁。導航菜單中的發(fā)布知識,跳轉到發(fā)布知識界面,在此界面填寫要發(fā)布的知識內容,還可上傳知識附件,填寫完畢可點擊發(fā)布按鈕進行發(fā)布(發(fā)布前需要先進行登錄,若未登錄則跳轉到登錄界面)。在知識詳情頁顯示知識文檔的詳細信息,還顯示關于這份知識文檔對應的評論列表,用戶可在知識詳情頁底部對知識文檔進行評論(評論需先進行登錄操作),另外,若當前所在知識詳情頁所對應的知識文檔是當前登錄用戶所發(fā)布的知識文檔,則當前登錄用戶將擁有采納的功能,可對當前知識詳情頁中的評論信息進行采納。前臺知識庫平臺的業(yè)務流程圖如圖2.2。圖2.2前臺知識庫平臺流程圖2.2.2后臺知識庫管理系統業(yè)務流程 企業(yè)員工用戶進入后臺知識庫管理系統,首先必須使用管理員賬號登錄(管理員角色分為超級管理員和普通管理員兩種)。登錄成功后,跳轉到后臺知識庫管理系統首頁界面。首頁中部顯示整個系統的統計信息,統計的信息包括知識文檔的總發(fā)布數、總評論數、總采納數、總用戶數、普通用戶數、管理用戶數等信息。首頁左側顯示導航菜單,菜單項包括用戶管理、知識管理、管理員管理、類別管理,其中普通管理員僅擁有用戶管理和知識管理的權限,而超級管理員則擁有所有權限。用戶管理,管理每一個用戶的信息及權限(登錄、發(fā)布、評論),該功能同時被超級管理員和普通管理員擁有。知識管理,搜索知識,批量刪除知識、修改知識。該功能被超級管理員和普通管理員同時擁有。管理員管理,對所有管理員進行管理,該功能僅被超級管理員所擁有。知識類別管理,根據父級子級生成類別樹,可對知識類別進行管理,該功能僅被超級管理員所擁有。 后臺知識庫管理系統的業(yè)務流程圖如圖2.3。圖2.3后臺知識庫管理系統流程圖2.3前臺知識庫平臺的需求分析2.3.1用戶登錄 功能模塊描述: 前臺知識庫平臺登錄界面,用戶輸入正確的用戶名和密碼,完成登錄操作。 只要登錄后,才能進行發(fā)布知識、評論知識、管理我的知識的操作。2.3.2用戶注冊 功能模塊描述: 前臺知識庫平臺注冊界面,提供用戶、密碼等相關個人信息供使用者注冊,注冊成功后方可使用注冊的用戶名及密碼進行登錄操作。2.3.3用戶中心功能模塊描述:前臺知識庫平臺個人中心界面,此界面展示當前登錄用戶的基本信息以及個人簡介。另外在此界面,還有修改個人信息的按鈕,可跳轉到修改個人信息界面進行個人信息修改的操作。前臺知識庫平臺用戶詳情界面,展示知識發(fā)布者的基本信息以及個人簡介。①知識列表界面中,點擊某個知識列表項中的頭像,發(fā)出請求后跳轉到其知識文檔發(fā)布者的用戶詳情界面。②在知識詳情界面中,點擊知識文檔發(fā)布者的頭像,可發(fā)出請求跳轉到其知識文檔發(fā)布者的用戶詳情界面。2.3.4知識列表 功能模塊描述: 前臺知識庫平臺知識列表界面,展示所有公開的知識文檔的知識列表,列表項中展示知識文檔的標題、內容、發(fā)布時間、知識類別、評論數等信息。為了更方便地使用者查看知識文檔信息,界面左側展示所有的知識類別樹,用戶點擊知識類別可查詢對應類別的知識文檔。用戶還可以在此界面搜索相關知識文檔,還有,點擊列表項中的評論可以跳轉到對應的知識文檔的詳情頁。2.3.5知識搜索 功能模塊描述: 此功能使用于前臺知識庫平臺知識列表界面,鑒于知識文檔內容的復雜以及文字量過大,系統為使用者提供強大的知識搜索功能,支持全文檢索,對搜索到知識文檔中的內容,而不僅僅是對知識文檔的標題進行查詢,便于使用者在知識文檔數量龐大的知識庫中搜索到自己需要的知識文檔。2.3.6個人知識 功能模塊描述: 登錄成功后,可通過點擊前臺知識庫平臺頂部導航菜單中的我的知識按鈕,跳轉到我的知識界面。用戶可在此界面管理自己所發(fā)布的知識,包括修改知識和關閉知識。另外,點擊界面中的查看詳情按鈕可以跳轉到對應的知識文檔的詳情頁。修改知識:可對自己的知識進行修改、更新和完善,可修改知識文檔的標題、類別、內容,以及知識附件。關閉知識:關閉后的知識將無法進行修改,也不具有公開性,無法被其它用戶所查看。2.3.7知識分享 功能模塊描述: 知識分享模塊,確保知識文檔在系統內的分享性、公開性、交流性,包括發(fā)布知識、評論知識、采納評論(意見)。在知識詳情界面,可查看到所有與當前所對應的知識文檔相關的評論信息,系統用戶于此對知識文檔進行交流。發(fā)布知識:此功能需要先進行登錄,登錄后可進行發(fā)布知識的操作。在發(fā)布知識界面填寫需要的信息后,即可發(fā)布知識。發(fā)布成功后的知識是公開的,可以被系統中的其它使用者所查看。而評論知識的功能需要先進行登錄,登錄后可進行對當前所對應的知識文檔進行評論。采納評論(意見),此功能使用于知識詳情界面。使用采納功能需要先進行登錄,若當前知識詳情界面所對應的知識文檔是當前登錄用戶所發(fā)布的,則當前登錄用戶可對當前界面中的評論信息(意見)進行采納的操作。2.4后臺知識庫管理系統的需求分析2.4.1管理員登錄 功能模塊描述: 后臺知識庫管理系統登錄界面,提供三個文本框,一個輸入用戶名,一個輸入密碼,一個輸入界面顯示的驗證碼,管理員登錄成功后將管理員信息存放到session里面,保留登錄狀態(tài),過一定時間之后session將過期。2.4.2信息統計 功能模塊描述:登錄成功后,跳轉到后臺知識庫管理系統首頁,首頁展示系統的統計信息,包括知識文檔的總發(fā)布數、總評論數、總采納數、總用戶數、普通用戶數、管理用戶數等信息。系統左側導航菜單處包括,用戶管理、知識管理、管理員管理、類別管理。2.4.3用戶管理 功能模塊描述: 此功能被普通管理員和超級管理員擁有。 用戶列表顯示所有用戶的信息(普通用戶和管理人員),可對用戶進行搜索,可管理每一個用戶的信息及權限(登錄、發(fā)布、評論)。修改用戶信息,禁止或允許用戶登錄、發(fā)布、或評論。還可以刪除用戶。2.4.4管理員管理 功能模塊描述: 此功能只被超級管理員所擁有。可對所有管理員進行管理。 管理員列表顯示所有的管理員信息,可對管理員進行搜索。超級管理員可在此添加普通管理員,而添加管理員的同時,也將新增一個用戶賬號,此用戶可用于登錄前臺知識庫平臺和后臺知識庫管理系統。另外,還可以修改管理員的信息,也可禁用或啟用管理員的用戶,刪除管理員。2.4.5知識管理 功能模塊描述:此功能被普通管理員和超級管理員擁有。知識列表展示系統所有的知識文檔信息(包括已關閉的知識),可對知識文檔進行搜索,列表左側顯示類別樹,也可使用類別樹進行搜索。管理員可在此添加知識,批量刪除知識。還可以進入對應的知識詳情頁,可在知識詳情頁中,修改知識,刪除詳情頁中的評論信息。2.4.6知識類別管理 功能模塊描述: 此功能只被超級管理員所擁有。 類別列表展示系統所有的知識類別,列表左側顯示類別樹,點擊類別樹可展示被點擊類別下的子類。 超級管理員可在此,添加知識類別、修改知識類別、刪除知識類別。2.5本章小結 本章首先從整體分析WIKI文檔管理系統的總體需求,通過給出WIKI文檔管理系統的模塊更加清晰地展示系統的需求功能。然后,分別描述WIKI文檔管理系統中的前臺知識庫平臺和后臺知識庫管理系統的業(yè)務流程需求,通過前臺知識庫平臺和后臺知識庫管理系統的流程圖展示了兩者的業(yè)務流程。最后,更加詳細地對WIKI文檔管理系統的功能模塊進行說明,更加全面地描述系統的需求。第3章系統設計3.1系統總體架構設計 本系統是面向對象的開發(fā)方法,主要采用B/S的開發(fā)模式,使用JAVA編程語言進行開發(fā)。后臺方面使用了方欣ICAP服務下集成的Springboot框架,以MySQL作為系統的數據庫,使用了Mybatis作為持久層框架,前端展示方面各使用到了LayUI、Vue、Bootstrap的部分功能。另外,鑒于系統的發(fā)布知識、評論知識等功能需要用戶輸入知識文檔內容或評論的信息,這些信息的形式是多樣的,故引入百度出品的UEditor富文本編輯器解決用戶輸入信息的多樣性的問題。3.2前臺知識庫平臺功能設計圖3.1前臺知識庫平臺功能模塊圖3.2.1登錄 功能實現: 前端:前臺知識庫平臺登錄界面,提供三個文本框,一個輸入用戶名,一個輸入密碼,一個輸入界面顯示的驗證碼,點擊登錄按鈕向后端發(fā)出登錄請求前,在前端先對用戶名、密碼、驗證碼進行驗證,其中用戶名、密碼不能為空,且驗證碼需正確輸入。后端:接收前端登錄請求后,先將密碼解密后,再根據用戶名和密碼查詢數據庫,用戶登錄成功后將用戶信息存放到session里面,保留登錄狀態(tài),過一定時間之后session將過期。3.2.2注冊 功能實現: 前端:前臺知識庫平臺注冊界面,填寫用戶名、昵稱、密碼、性別、部門、手機、個人簡介的信息,提交表單即可發(fā)出注冊請求,注冊成功后跳轉到登錄界面。 后端:接收前端注冊請求后,先查詢數據庫判斷用戶名已存在,若用戶名不存在則運行注冊,然后使用MD5算法對密碼進行加密,然后將user數據插入數據庫,插入成功后返回注冊成功信息。3.2.3個人中心功能實現: 前端:前臺知識庫平臺個人中心界面,點擊前臺知識庫平臺所有界面中的頂部導航菜單中的用戶頭像(或是懸浮出來的個人中心按鈕),可跳轉到個人中心界面。用戶頭像(或是懸浮出來的個人中心按鈕)的顯示需判斷是否為已登錄狀態(tài)。個人中心展示當前登錄用戶的基本信息(含頭像、姓名、用戶類型、知識狀態(tài)、評論狀態(tài)、評論次數、被采納數、發(fā)布次數等信息)以及個人簡介。 后端:根據當前登錄用戶Id,從數據庫查詢出對應的用戶信息,返回到前端展示。3.2.4修改個人信息功能實現: 前端:前臺知識庫平臺個人中心界面,點擊“修改信息”按鈕,可跳轉到個人信息修改界面。發(fā)布請求查看個人信息,將返回的個人信息展示到要修改信息的文本框上(或其它)。可選擇圖片,上傳要修改的頭像。填寫要修改的信息,點擊“立即提交”按鈕,發(fā)出修改個人信息請求。修改個人信息請求完成后,跳轉回個人中心界面,顯示最新的個人信息。 后端:根據當前登錄用戶Id,從數據庫查詢出對應的用戶信息,返回到前端展示。接收修改個人信息請求,將要修改的參數,插入到數據庫中,插入完成后返回成功信息。3.2.5用戶詳情 功能實現: 前端:前臺知識庫平臺用戶詳情界面,①在知識列表界面中,點擊某個知識列表項中的頭像,可發(fā)出請求跳轉到其知識文檔發(fā)布者的用戶詳情界面。②在知識詳情界面中,點擊知識文檔發(fā)布者的頭像,可發(fā)出請求跳轉到其知識文檔發(fā)布者的用戶詳情界面。③展示用戶的基本信息(含頭像、評論次數、被采納數、發(fā)布次數等信息)以及個人簡介。 后端:根據傳入的用戶Id,從數據庫查詢出對應的用戶信息,返回到前端展示。3.2.6知識類別樹 功能實現: 前端:前臺知識庫平臺知識詳情界面,左側展示知識類別樹,最頂級為類別管理,類別管理下為父類類別,父類下的為子類。將后端返回擁有特定結構的數據展示出來。后端:從數據庫查詢出所有類別,編寫方法,通過循環(huán)遍歷,根據數據中的parent_id,將子類數據,set進父類數據下,然后將數據返回到前端。3.2.7查詢所有知識文檔信息功能實現: 前端:前臺知識庫平臺知識詳情界面,中間內容分頁展示所有公開的知識文檔信息(非已關閉狀態(tài)的知識)。使用折疊效果展示數據,默認展示知識的標題、類別、發(fā)布者、發(fā)布時間、及評論數,點擊知識標題將展開內容,展示知識內容信息。后端:從數據庫查詢出所有公開的知識文檔信息(非已關閉狀態(tài)的知識),查詢語句條件question_state=TRUE,將數據返回到前端展示。3.2.8知識搜索功能 功能實現: 前端:前臺知識庫平臺知識詳情界面,可點擊左側類別樹對知識進行搜索,點擊父類則搜索父類下的所有知識,點擊父類下的子類,則搜索子類下的所有知識。中部展示知識內容的頂部,有兩個文本框和一個搜索按鈕,一個文本框可用于搜索知識標題,另一個文本框可用于搜索知識內容,其中知識內容可全文檢索。后端:使用Mybatis中的標簽,可根據前端傳來的參數,動態(tài)地進行查詢知識文檔表。知識內容可全文檢索,全文檢索使用到了MySQL自帶的一個分詞功能,而不是單純的使用SQL語句中的like。自行編寫將搜索關鍵詞高亮顯示的方法,對查詢到的知識內容中的字符串,包含的搜索關鍵詞,使用String的replace方法,將搜索Key,替換成"<fontstyle='color:#ff1500;background:#f5f251'>"+Key+"</font>",如此一來,當這個字符串返回到前端顯示時,將高亮顯示。3.2.9個人知識信息 功能實現: 前端:前臺知識庫平臺我的知識界面,分別按無評論、已評論、已采納、已關閉4個狀態(tài)分頁展示當前登錄用戶所發(fā)布的知識文檔信息,展示知識的標題、類別、發(fā)布者、發(fā)布時間、及評論數。為了更美觀的效果,給知識內容設置一個高度,并且使用overflow-y:auto,當元素內容溢出時隱藏溢出的部分。默認先展示無評論狀態(tài)的我的知識。后端:從會話session中,獲得當前登錄用戶的信息,根據登錄用戶的Id以及前端傳來的狀態(tài)值(1無評論,2已評論,3已采納,4已關閉)查詢知識文檔內容,將數據返回到前端展示。3.2.10修改知識文檔 功能實現: 前端:前臺知識庫平臺我的知識界面,只有在無評論、已評論、已采納狀態(tài)下的知識,會顯示修改知識按鈕。點擊其中一條知識文檔中的修改知識按鈕,彈出修改知識窗口的同時,發(fā)出查看單個知識文檔信息的請求,并將返回的數據展示在這個修改知識的窗口中對應的文本框上,或者知識附件列表上。知識內容輸入區(qū)域,引入百度Ueditor,讓輸入內容更美觀、更豐富。填寫需要修改的信息,點擊確認修改按鈕,發(fā)出知識修改請求前,將對參數進行校驗,其中知識的標題、類別、內容不能為空。有知識附件的話,可以對知識附件進行下載操作,還可以修改知識附件,點擊“修改附件”按鈕,選擇文件,可上傳文件,隨后點擊確認修改按鈕時,也將會把知識附件的路徑信息傳到后端。請求完成后reload這個窗口,顯示已修改的知識信息。后端:接收查看單個知識文檔信息的請求,根據前端傳來的知識Id,從數據庫中查詢知識文檔信息,將知識文檔信息返回到前端展示。接收修改知識的請求,根據知識Id及其它知識信息參數,修改數據庫數據,修改完成后返回成功信息。3.2.11關閉知識文檔 功能實現: 前端:前臺知識庫平臺我的知識界面,只有在無評論、已評論、已采納狀態(tài)下的知識,會顯示關閉知識按鈕。點擊其中一條知識文檔中的關閉知識按鈕,彈出是否確認關閉知識的彈框,點擊確認將發(fā)出關閉知識請求。關閉請求成功后,reload我的知識界面,顯示最新的知識文檔信息。 后端:接收關閉知識的請求,根據前端傳來的知識Id,修改知識表對應數據中的字段question_state,修改完成后返回關閉知識成功信息。3.2.12知識詳情功能實現: 前端:前臺知識庫平臺知識詳情界面,在知識列表界面中,點擊某知識文檔列表項中的評論按鈕,可跳轉到知識詳情界面。在我的知識界面中,點擊某知識文檔列表項中的查看詳情按鈕,可跳轉到知識詳情界面。在首頁-熱門知識界面中,點擊某個知識文檔列表項,可跳轉到知識詳情界面。發(fā)出查看某個知識詳情的請求,請求成功后展示某個知識的標題、內容、類別,包括知識附件列表,可進行附件下載的操作。另外還分頁展示與此知識相關的評論列表。根據后端返回的評論信息,判斷adoption_state-采納狀態(tài),默認0未采納,若adoption_state!=0則顯示已采納的標簽在對應的評論信息上。 后端:接收查看知識詳情的請求,根據傳來的questionId查詢知識文檔信息以及知識附件信息,另外聯表查詢出相關的評論信息,將知識文檔信息和評論信息返回到前端展示。3.2.13發(fā)布知識 功能實現: 前端:前臺知識庫平臺發(fā)布知識界面,點擊前臺知識庫平臺所有界面中的頂部導航菜單中的發(fā)布知識按鈕,可跳轉到發(fā)布知識界面。進入發(fā)布知識界面后,判斷是否為已登錄狀態(tài)。已登錄狀態(tài)顯示“發(fā)布”按鈕,未登錄狀態(tài)為“登錄發(fā)布”按鈕,若是點擊“登錄發(fā)布”按鈕,跳轉到登錄界面,執(zhí)行登錄操作完成后,將返回到發(fā)布知識界面。若是已登錄狀態(tài),則可以填寫要發(fā)布的知識信息,還可以點擊上傳附件按鈕,選擇文件進行上傳,點擊“發(fā)布”按鈕,發(fā)出發(fā)布知識請求。知識內容輸入區(qū)域,引入百度Ueditor,讓輸入內容更美觀、更豐富。⑤發(fā)布請求成功后,reload當前界面。 后端:接收發(fā)布知識請求,將知識文檔對應字段插入到數據庫中,插入成功則返回成功信息。3.2.14評論知識 功能實現: 前端:前臺知識庫平臺知識詳情界面的最下方,評論輸入區(qū)域,引入百度Ueditor,讓輸入內容更美觀、更豐富。判斷是否為已登錄狀態(tài)。已登錄狀態(tài)顯示“評論”按鈕,未登錄狀態(tài)為“登錄評論”按鈕,若是點擊“登錄評論”按鈕,跳轉到登錄界面,執(zhí)行登錄操作完成后,將返回到知識詳情界面。若是已登錄狀態(tài),則可以填寫要評論的內容,點擊“評論”按鈕,發(fā)出評論知識請求。評論請求成功后,reload當前界面,可查看新的評論信息。 后端:接收評論知識請求,根據session獲取當前用戶信息。把當前登錄用戶當作評論者,將評論信息和評論者信息(當前用戶信息),以及傳入的questionId知識ID插入到數據庫中,插入成功則返回成功信息。3.2.15采納評論(意見) 功能實現: 前端:前臺知識庫平臺知識詳情界面中的評論列表,判斷當前登錄用戶是否為當前知識詳情界面所展示的知識文檔的發(fā)布者。若是,則評論列表中的列表項顯示“采納”按鈕,點擊“采納”按鈕,發(fā)出采納評論(意見)請求。采納請求成功后,reload當前界面,可查看新的評論信息。采納的評論,將根據評論的statusId判斷是否被采納,statusId不為空則顯示“已采納”的標簽。 后端:接收采納評論請求,根據session獲取當前用戶信息。首先根據傳入的知識ID查詢數據庫,判斷其采納者是否為知識的發(fā)布者,如不是則返回失敗信息。若發(fā)布者校驗通過的話,則根據評論唯一ID去修改數據庫該評論的采納狀態(tài)(采納狀態(tài)默認為null,被采納后為采納者的用戶ID),修改成功則返回成功信息。另外,評論列表中的評論順序,在后端邏輯中處理,會根據采納狀態(tài)進行排序,已采納的評論在前,未采納的評論在后。而已采納的評論之間,則再根據采納時間排序,已采納的評論,新的在前,舊的在后。3.3后臺知識庫管理系統功能設計圖3.2后臺知識庫管理系統功能模塊圖3.3.1管理員登錄 功能實現: 前端:后臺知識庫管理系統登錄界面,與前臺知識庫平臺相似,輸入用戶名、密碼及驗證碼進行登錄,前端進行驗證后發(fā)出登錄請求。 后端:接收登錄請求,先將密碼解密后,再根據用戶名、密碼查詢數據庫管理員表,有記錄的話則把管理員信息存入session,返回前端。3.3.2查看統計信息功能實現: 前端:后臺知識庫管理系統首頁-統計信息界面,進入此界面則發(fā)出查看統計信息的請求,返回數據分別按總數、今日、昨日、本周、本月展示知識庫系統的總發(fā)布、總評論、總采納、總用戶、普通用戶、管理用戶等統計信息。 后端:接收查看統計信息的請求,通過聯表查詢的方法分別查詢出不同類型的統計信息數據,并把統計信息數據返回到前端。3.3.3查看用戶列表功能實現:此功能被普通管理員和超級管理員所擁有。 前端:后臺知識庫管理系統用戶列表界面,默認分頁展示所有用戶(包含普通用戶和管理人員)的用戶名、昵稱、用戶類型、部門、性別、手機、上次登錄時間、加入時間(用戶創(chuàng)建時間)、狀態(tài)(登錄狀態(tài)、發(fā)布知識狀態(tài)、評論狀態(tài))信息。可分別根據登錄狀態(tài)(允許登錄、禁止登錄)、發(fā)布知識狀態(tài)(允許發(fā)布、禁止發(fā)布)、評論狀態(tài)(允許評論、禁止評論)、性別、用戶類型(普通用戶、管理人員)、激活狀態(tài)(已激活、未激活),(用戶名、昵稱或電話(模糊查詢))多條件搜索用戶。 后端:多條件參數查詢接口,對用戶表進行查詢,使用Mybatis的標簽編寫動態(tài)sql,可根據參數是否為空,動態(tài)的進行查詢,查詢完成后返回用戶信息到前端。3.3.4批量修改用戶狀態(tài)功能實現:此功能被普通管理員和超級管理員所擁有。 前端:后臺知識庫管理系統用戶列表界面,可批量修改用戶狀態(tài)(批量允許登錄、批量禁止登錄;批量允許發(fā)布、批量禁止發(fā)布;批量允許評論、批量禁止評論;批量激活賬號、批量未激活賬號),點擊下拉框選擇要修改的狀態(tài),同時選擇一個或一個以上的用戶后,點擊“批量修改”按鈕即可發(fā)出修改用戶狀態(tài)請求,請求完成后界面刷新,展示最新的用戶數據。也可以直接修改單個用戶狀態(tài),點擊用戶列表中的列表項“狀態(tài)”欄中的“允許登錄、禁止登錄;允許發(fā)布、禁止發(fā)布;允許評論、禁止評論”狀態(tài),則彈出與狀態(tài)相反信息的修改提示框,點擊確定則發(fā)出修改用戶狀態(tài)請求,請求完成后界面刷新,展示最新的用戶數據。 后端:接收批量修改用戶狀態(tài)請求,使用List<String>ids接收用戶id,接口中遍歷這個List,通過循環(huán)去多次對數據庫中的用戶表進行修改,循環(huán)結束后則返回成功信息會前端。3.3.5修改用戶信息 功能實現:此功能被普通管理員和超級管理員所擁有。 前端:后臺知識庫管理系統用戶列表界面,點擊用戶列表中的列表項“操作”欄中的“修改”圖標,則彈出修改用戶信息的彈出層,填寫要修改的用戶信息后(其中用戶名不可修改),點擊修改則發(fā)出修改用戶信息請求,請求完成后界面刷新,展示最新的用戶數據。僅可對用戶類型為普通用戶的用戶進行修改。 后端:接收修改用戶信息請求,根據用戶id對數據庫對應數據進行修改,修改成功后返回成功信息到前端。3.3.6批量刪除用戶功能實現:此功能被普通管理員和超級管理員所擁有。 前端:后臺知識庫管理系統用戶列表界面,選擇一個或一個以上的用戶后,點擊“批量刪除”按鈕即可發(fā)出批量刪除請求,請求完成后界面刷新,展示最新的用戶數據。點擊用戶列表中的列表項“操作”欄中的“刪除”圖標,則彈出刪除用戶的消息提示框,點擊確認后則發(fā)出刪除用戶請求,請求完成后界面刷新,展示最新的用戶數據。僅可對用戶類型為普通用戶的用戶進行刪除。 后端:接收批量刪除用戶狀態(tài)請求,使用List<String>ids接收用戶id,接口中遍歷這個List,通過循環(huán)去多次對數據庫中的用戶表進行偽刪除,根據傳入的管理員id分別修改管理員表和用戶表中對應的數據的delete_time(刪除時間),循環(huán)結束后則返回成功信息會前端。3.3.7查看管理員列表 功能實現:此功能僅超級管理員所擁有。 前端:后臺知識庫管理系統管理員列表界面,默認分頁展示所有管理員的用戶名、昵稱、手機、加入時間(用戶創(chuàng)建時間)、狀態(tài)(已啟用、未啟用)、管理員類型信息。可分別根據狀態(tài)(已啟用、未啟用)、(用戶名、昵稱或電話(模糊查詢))多條件搜索管理員。 后端:多條件參數查詢接口,對管理員表進行查詢,使用Mybatis的標簽編寫動態(tài)sql,可根據參數是否為空,動態(tài)地進行查詢,查詢完成后返回管理員信息到前端。3.3.8添加管理員 功能實現:此功能僅超級管理員所擁有。 前端:后臺知識庫管理系統管理員列表界面,點擊界面上的“添加”按鈕,彈出添加管理員的窗口,填寫相關的管理員信息后點擊“添加”,則可發(fā)出添加管理員請求,請求完成后界面刷新,展示最新的管理員數據。添加的管理員類型只能為普通管理員。 后端:接收請求后,先用傳來的用戶名參數查詢用戶表中是否已存在用戶名,若不存在的話,將相關數據同時插入到管理員表中,同時也將數據插入到用戶表中,數據插入成功則返回成功信息回前端。3.3.9修改管理員狀態(tài) 功能實現:此功能僅超級管理員所擁有。 前端:后臺知識庫管理系統管理員列表界面,點擊管理員列表中的列表項“操作”欄中的“表情”圖標,則彈出是否(啟用或禁用)管理員的消息提示框,點擊確認后則發(fā)出修改管理員狀態(tài)請求,請求完成后界面刷新,展示最新的用戶數據。 后端:接收請求后,根據傳入的管理員id分別對管理員表和用戶表中的login_state(登錄狀態(tài))進行修改,修改成功則返回成功信息回前端。3.3.10刪除管理員 功能實現:此功能僅超級管理員所擁有。 前端:后臺知識庫管理系統管理員列表界面,點擊管理員列表中的列表項“操作”欄中的“刪除”圖標,則彈出是否刪除管理員的消息提示框,點擊確認后則發(fā)出刪除管理員請求,請求完成后界面刷新,展示最新的用戶數據。 后端:接收請求后,對數據進行偽刪除,根據傳入的管理員id分別修改管理員表和用戶表中對應的數據的delete_time(刪除時間),刪除成功則返回成功信息回前端。3.3.11查看知識列表功能實現:此功能被普通管理員和超級管理員所擁有。 前端:后臺知識庫管理系統知識列表界面,默認分頁展示所有知識文檔的發(fā)布者、類別、標題、評論次數、發(fā)表時間、知識狀態(tài)、采納狀態(tài)信息。可分別根據知識狀態(tài)(已關閉、開啟中),用戶名、知識標題(模糊查詢)多條件搜索知識文檔。 后端:多條件參數查詢接口,對知識表進行查詢,使用Mybatis的標簽編寫動態(tài)sql,可根據參數是否為空,動態(tài)的進行查詢,查詢完成后返回知識文檔信息到前端。3.3.12查看知識類別樹(含子類) 功能實現: 此功能被普通管理員和超級管理員所擁有。 前端:后臺知識庫管理系統知識列表界面,左側展示知識類別樹,最頂級為類別管理,類別管理下為父類類別,點擊父類可展開,顯示子類。將后端返回擁有特定結構的數據展示出來。前端做邏輯,根據返回的類別數據中的pid進行判斷,顯示正確的數據。后端:從數據庫查詢出所有類別,編寫方法,通過循環(huán)遍歷,根據數據中的parent_id,將子類數據,set進父類數據下,然后將數據返回到前端。3.3.13添加知識文檔功能實現:此功能被普通管理員和超級管理員所擁有。 前端:后臺知識庫管理系統知識列表界面,點擊界面上的“添加知識”按鈕,彈出添加知識的窗口,填寫相關的知識信息后點擊“添加”,則可發(fā)出添加知識請求,請求完成后界面刷新,展示最新的管理員數據。其中,提交請求前,對知識標題、類別、內容進行判斷,不能為空。另外可上傳知識附件。 后端:接收請求后,將傳來的參數新增到數據庫中,數據新增成功則返回成功信息回前端。3.3.14批量刪除知識文檔功能實現:此功能被普通管理員和超級管理員所擁有。 前端:后臺知識庫管理系統知識列表界面,選擇一個或一個以上的知識后,點擊“批量刪除”按鈕即可發(fā)出批量刪除知識請求。點擊知識列表中的列表項“操作”欄中的“刪除”圖標,則彈出刪除知識的消息提示框,點擊確認后則發(fā)出刪除知識請求。僅可對用戶類型為普通用戶的用戶進行刪除。請求完成后界面刷新,展示最新的知識數據。 后端:接收批量刪除知識請求,使用List<String>ids接收知識id,接口中遍歷這個List,通過循環(huán)去多次對數據庫中的數據進行刪除,在循環(huán)中,首先對評論表的對應知識的評論進行刪除后,再對知識表中的知識進行刪除,循環(huán)結束后則返回成功信息會前端。3.3.15知識詳情 功能實現: 前端:后臺知識庫管理系統知識列表界面,點擊知識列表中的列表項“操作”欄中的“詳情”圖標,則對應知識的知識詳情窗口,展示某個知識的標題、內容、類別,包括知識附件列表,可進行附件下載的操作。另外還展示與此知識相關的評論列表。 后端:接收查看知識詳情的請求,根據傳來的questionId查詢知識信息以及知識附件信息,另外聯表查詢出相關的評論信息,將知識信息和評論信息返回到前端展示。3.3.16修改知識文檔 功能實現: 前端:后臺知識庫管理系統知識列表界面中的知識詳情窗口,在知識詳情窗口中,可對知識內容及知識附件進行修改,點擊修改后發(fā)出修改請求。修改完成后,刷新頁面,展示最新的數據。 后端:接收修改知識請求,根據傳來的questionId對知識表和知識附件表進行修改,修改完成后返回成功信息。3.3.17刪除評論 功能實現: 前端:后臺知識庫管理系統知識列表界面中的知識詳情窗口,在知識詳情窗口中,可對展示的單個評論信息進行刪除。刪除完成后,刷新頁面,展示最新的數據。 后端:接收刪除評論請求,根據傳來的answerId對評論表進行刪除,刪除完成后返回成功信息。3.3.18查看知識類別列表功能實現:此功能僅被超級管理員所擁有。 前端:后臺知識庫管理系統知識類別列表界面,右側內容區(qū)域分頁展示類別信息(類別名稱、創(chuàng)建時間),默認展示所有父類類別。點擊左側類別樹最頂級類別管理時,右側內容區(qū)域展示所有父類類別。點擊左側類別樹父類類別時,右側內容區(qū)域展示所有此父類下所含的子類。 后端:根據傳來的類別ID查詢數據庫中的類別信息。3.3.19查看知識類別樹(僅父類)功能實現:此功能僅被超級管理員所擁有。 前端:后臺知識庫管理系統知識類別列表界面,左側展示類別樹,類別管理為最頂級,類別管理下為父類,子類不在此類別樹中展示。 后端:與前臺類別樹相似,查出所有類別信息,通過遍歷,將類別信息形成特定的數據格式返回到前端展示。3.3.20添加知識類別功能實現:此功能僅被超級管理員所擁有。 前端:后臺知識庫管理系統知識類別列表界面,點擊“添加”按鈕,彈出添加類別的窗口。若點擊按鈕前,未選擇左側類別樹任何父類類別,則添加的類別為父類類別,反之,若已選擇父類類別,則添加的類別為此父類類別下的子類。填寫要添加的類別名稱,點擊添加即可發(fā)出添加知識類別請求。 后端: 先查詢數據庫,判斷要添加的類別名稱是否已存在,不存在則將數據插入到數據庫中。3.3.21修改知識類別功能實現:此功能僅被超級管理員所擁有。 前端:后臺知識庫管理系統知識類別列表界面,點擊知識類別列表中操作欄中的“修改”圖標,彈出修改類別的窗口。默認顯示要修改的類別的上級類別,上級類別不允許修改。填寫要修改的類別名稱,點擊修改即可發(fā)出修改知識類別請求。 后端: 根據類別ID及名稱,先判斷數據庫中是否有重復類別,若無則新增數據到數據庫中。3.3.22刪除知識類別功能實現:此功能僅被超級管理員所擁有。 前端:后臺知識庫管理系統知識類別列表界面,點擊知識類別列表中操作欄中的“刪除”圖標,彈出刪除類別的消息提示。點擊確認即可發(fā)出刪除知識類別請求。 后端: 根據類別ID,刪除數據庫中的數據。3.4系統數據庫設計WIKI文檔管理系統需要存放知識文檔龐大的數據量,所以首先必須要選擇要給優(yōu)良的數據庫,從基本做起,把數據庫設計好來。本系統使用MYSQL作為后臺數據庫。以下是本系統數據表的設計。 1、下表為表as_user(用戶信息表)的詳細信息:表3.1用戶信息表字段名稱字段類型是否為空字段說明idintNOTNULLID(主鍵)user_namevarcharNOTNULL用戶真實姓名nick_namevarcharNOTNULL用戶昵稱login_statetinyintNOTNULL是否允許登錄,1允許,0不允許passwordvarcharNOTNULL登錄密碼question_statetinyint發(fā)布狀態(tài),1允許,0禁止answer_statetinyint評論狀態(tài),1允許,0禁止user_typetinyintNOTNULL用戶類型,1用戶、2管理員sextinyint用戶性別,1:男,2:女cityvarchar所在部門phonevarcharNOTNULL電話號碼user_photovarchar用戶頭像地址user_summarytext用戶簡介login_timedatetime最后登錄時間create_timedatetime創(chuàng)建時間update_timedatetime修改時間delete_timedatetime刪除時間 2、下表為表as_admin(管理員信息表)的詳細信息:表3.2管理員信息表字段名稱字段類型是否為空字段說明idintNOTNULL對應user表IDadmin_typetinyintNOTNULL管理員類型,0:超級管理員,1普通管理員,超級管理員不可刪除admin_nickvarcharNOTNULL管理員昵稱admin_namevarcharNOTNULL管理員姓名passwordvarcharNOTNULL登錄密碼phonevarchar電話號碼login_statetinyintNOTNULL登錄狀態(tài)create_timedatetime創(chuàng)建時間update_timedatetime修改時間delete_timedatetime刪除時間 3、下表為表as_answers(評論表)的詳細信息:表3.3評論表字段名稱字段類型是否為空字段說明idintNOTNULLID(主鍵)user_idintNOTNULL評論用戶(外鍵)question_idintNOTNULL知識id(外鍵)answer_summarytext評論內容answer_photostext評論圖片approval_numint贊同人數oppose_numint反對人數adoption_statetinyintNOTNULL采納狀態(tài),默認0未采納scoretinyint提問者打分create_timedatetime創(chuàng)建時間update_timedatetime修改時間delete_timedatetime刪除時間 4、下表為表as_grade(評論表)的詳細信息:表3.4知識類別表字段名稱字段類型是否為空字段說明idintNOTNULL類別ID(主鍵)parent_idint父級類別ID,為0時為最頂級類別grade_namevarcharNOTNULL類別名稱create_timedatetime創(chuàng)建時間update_timedatetime修改時間delete_timedatetime刪除時間 5、下表為表as_questions(知識文檔表)的詳細信息:表3.5知識文檔表字段名稱字段類型是否為空字段說明idintNOTNULL知識IDuser_idint知識發(fā)布者(外鍵)question_titlelongtext知識標題question_summarylongtext知識內容question_delhtmllongtext知識內容去除html標簽question_photoslongtext知識圖片solve_stateintNOTNULL解決狀態(tài):0未解決,解決后為采納的answer_idquestion_statetinyintNOTNULL知識狀態(tài),關閉后不通知提問者,默認1打開grade_idintNOTNULL類別ID(外鍵)create_timedatetime創(chuàng)建時間update_timedatetime修改時間delete_timedatetime刪除時間 6、下表為表as_questions_file(知識文件表)的詳細信息:表3.6知識文件表字段名稱字段類型是否為空字段說明idintNOTNULL文件ID(主鍵)question_idintNOTNULL知識ID(外鍵)file_namevarcharNOTNULL文件名file_pathvarchar文件存儲路徑versionint版本3.5本章小結 本章首先簡單介紹了開發(fā)WIKI文檔管理系統所使用到的技術。然后,分別畫了前臺知識庫平臺與后臺知識庫管理系統的詳細功能模塊圖,詳細地分別從前端和后端的角度介紹了這些需求功能的具體實現,力求把細節(jié)做到最好,開發(fā)出一個能讓使用者放心、滿意使用的系統。最后,描述數據庫的重要性,將本系統所設計的基本數據表按表格的形式展示在上文中。第4章系統實現 完成了WIKI文檔管理系統的基本開發(fā)后,記錄當前系統的實現情況。 以下為整個系統的實現圖:4.1前臺知識庫平臺界面實現熱門知識界面:展示最新發(fā)布的15條知識。圖4.1前臺知識庫首頁-熱門知識界面前臺知識庫登錄界面:前臺登錄(管理員和用戶都可登錄)。圖4.2前臺知識庫登錄界面前臺知識庫注冊界面:用戶在此注冊。圖4.3前臺知識庫注冊界面發(fā)布知識界面:填寫知識信息,發(fā)布知識。圖4.4前臺知識庫發(fā)布知識界面知識列表界面:①展示所有公開性的知識。 ②無法展示用戶已關閉的知識。 ③左側展示知識類別樹。圖4.5前臺知識庫知識列表界面知識列表界面:點擊標題,展開知識內容。圖4.6前臺知識庫知識列表項展開效果知識列表界面:①點擊左側類別樹,展示對應知識。 ②點擊父類展示父類下的子類,且查詢父類中所以的公開性知識。 ③查詢是否有數據,都用彈窗提示框提醒。圖4.7前臺知識庫知識列表類別樹查詢效果知識列表界面:①輸入關鍵字,進行全文檢索。 ②查詢到的知識文檔內容里面的關鍵字將高亮顯示。圖4.8前臺知識庫知識列表全文檢索效果我的知識界面:①展示當前用戶發(fā)布過的知識。②分別按無評論、已評論、已采納、已關閉4個狀態(tài)來展示我的知識。③設置定高,溢出部分隱藏,可用滾動條查看知識的隱藏部分。圖4.9前臺知識庫我的知識界面我的知識界面:可修改我的知識。圖4.10前臺知識庫我的知識界面,修改窗口知識詳情界面:①展示一條知識的詳細內容。包括知識的標題、內容、類別、發(fā)布時間、評論數等信息。②能夠按照知識內容中的格式展示知識內容原本的樣式,而不僅僅為普通的文本(如字體大小、圖片顯示等問題)。圖4.11前臺知識庫知識詳情界面知識詳情界面:展示與當前知識相關的評論信息。圖4.12前臺知識庫知識詳情界面,評論列表知識詳情界面:①對知識進行評論。②使用百度Ueditor富文本編輯器,編輯豐富多彩的評論內容(可插入圖片、使用編輯器自帶的表情)。圖4.13前臺知識庫知識詳情界面,發(fā)布評論區(qū)域個人中心界面:展示用戶個人信息。圖4.14前臺知識庫個人中心界面4.2后臺知識庫管理系統界面實現后臺知識庫管理系統登錄界面:僅管理員可登錄。圖4.15后臺知識庫管理系統登錄界面統計信息界面:展示系統相關統計信息。圖4.16后臺知識庫管理系統首頁-統計信息界面用戶列表界面:①管理員可對用戶進行查詢、修改、刪除等操作。 ②此界面,僅可對用戶類型為普通類型的用戶進行操作。③狀態(tài)欄使用按鈕樣式展示,并且展示其狀態(tài),點擊按鈕則可修改當前狀態(tài),為當前狀態(tài)相反的狀態(tài)(如當前為允許評論,點擊則修改為禁止評論)。圖4.17后臺知識庫管理系統用戶列表界面知識列表界面:管理員可對知識進行查詢、修改、刪除等操作。圖4.18后臺知識庫管理系統知識列表界面管理員列表界面:①此功能界面僅超級管理員可操作。②超級管理員可對管理員進行查詢、修改、刪除等操作。 ③添加管理員,僅可添加普通管理員(超級管理員只允許有一個)。圖4.19后臺知識庫管理系統管理員列表界面知識類別列表界面:超級管理員可對知識類別進行查詢、修改、刪除等操作。圖4.20后臺知識庫管理系統知識類別列表界面4.3本章小結 本章主要是記錄系統的實現效果,使用多個圖片,分別展示前臺知識庫與后臺知識庫管理系統的界面實現,展現本系統的最終完成效果。第5章系統測試與維護5.1系統測試的目的與意義 測試的目的:找出系統中的不足之處,檢測系統是否按項目需求實現功能,如前端數據是否準確展示、后端邏輯代碼是否正確等問題。通過找出問題、再解決問題的過程,讓系統更完善。測試的意義:測試是開發(fā)項目質量的重要保障,通過找出系統中的不足之處或者說漏洞,讓開發(fā)去完善這些不足,確保項目的完成度與質量,只要質量到位了才能夠給用戶去使用,否則只會降低用戶體驗度。5.2系統測試計劃 本系統采用黑盒測試,測試已知的系統功能是否達到目標需求。 具體的測試計劃: 測試一:名稱:用戶登錄測試。 目的:測試普通用戶與管理員的登錄功能。 內容:前后臺系統平臺分別進行登錄操作。 測試二:名稱:知識全文檢索測試。 目的:測試知識搜索準確度與關鍵字高亮顯示。 內容:前臺輸入關鍵字,進行知識內容全文檢索。測試三:名稱:發(fā)布知識測試。 目的:測試發(fā)布知識功能。 內容:檢測登錄狀態(tài),輸入發(fā)布知識的標題、內容、類別,或還可上傳知識附件,按自定義規(guī)則驗證參數輸入。 測試四:名稱:我的知識查詢測試。 目的:測試我的知識展示效果。 內容:進入我的知識界面,分別按無評論、已評論、已采納、已關閉4個狀態(tài),驗證數據的正確顯示。 測試五:名稱:知識分享測試。 目的:測試知識分享模塊。 內容:進入知識詳情界面,驗證知識文檔與評論信息的正確顯示,發(fā)表評論。 測試六:名稱:用戶管理測試。 目的:測試用戶管理模塊。 內容:查看普通用戶與管理員數據顯示、用戶狀態(tài)修改、用戶刪除。 測試七:名稱:管理員管理測試。 目的:測試管理員管理模塊。 內容:查看管理員數據顯示、管理員狀態(tài)修改、管理員刪除。 測試八:名稱:知識類別管理測試。 目的:測試知識類別管理模塊。 內容:查看類別數據顯示、類別添加、類別刪除。5.3測試用例及結果5.3.1用戶登錄測試 功能描述:可分為前臺登錄與后臺登錄,管理員用戶可登錄前臺與后臺,而普通用戶僅可登錄前臺。登錄界面輸入用戶名、密碼、還有驗證碼進行登錄,按自定義規(guī)則驗證參數,請求錯誤時有錯誤信息提醒。表5-1用戶登錄測試用例表序列測試目的測試內容測試結果測試說明測試參數驗證用戶名、密碼、驗證碼均為空必填項不能為空用戶名為空,密碼、驗證碼填寫必填項不能為空用戶名、密碼填寫,驗證碼為空必填項不能為空用戶名、驗證碼填寫,密碼輸入2個字符密碼必須6到16位,且不能出現空格用戶名、驗證碼填寫正確,驗證碼錯誤驗證碼不正確前臺登錄測試使用管理員用戶登錄登錄成功跳轉前臺首頁-熱門知識界面使用普通用戶登錄登錄成功跳轉前臺首頁-熱門知識界面后臺登陸測試使用管理員用戶登錄登錄成功跳轉后臺首頁-統計信息界面使用普通用戶登錄用戶不存在圖5-1前臺登錄界面5.3.2知識全文檢索測試 功能描述:由于知識內容數量龐大,提供知識內容全文檢索功能,快速準確地搜索到需要的知識,輸入知識標題或知識內容進行檢索。表5-2知識全文檢索測試用例表序列測試目的測試內容測試結果測試說明知識檢索功能測試知識標題、知識內容為空查到44條數據兩個都為空時,查詢所有公開性的知識輸入知識標題為“java”,知識內容為空查到1條數據模糊查詢知識標題為“java”的知識,內容展開后沒有高亮顯示輸入知識標題為空,知識內容為“git”查到1條數據全文檢索知識內容為“git的”知識,且知識內容展開后,關鍵字“git”高亮顯示輸入知識標題為“IDEA”,知識內容為“git”查到1條數據模糊查詢標題為“IDEA”,內容展開后關鍵字“git”高亮顯示輸入知識標題為“AAAAAAAAAAAAAA”,知識內容為“FDBDFSBEFDNTDFXVXBDTT”沒有查詢到任何數據圖5-2全文檢索效果圖5.3.3發(fā)布知識測試 功能描述:輸入知識的標題、內容、類別,或上傳知識附件,點擊發(fā)布按鈕進行發(fā)布。發(fā)布前需進行登錄,若已是登錄狀態(tài)則可直接進行發(fā)布。表5-3發(fā)布知識測試用例表序列測試目的測試內容測試結果測試說明發(fā)布知識界面登錄檢測未登錄狀態(tài)進入發(fā)布知識界面右下角顯示為登錄按鈕,而非發(fā)布按鈕已登錄狀態(tài)進入發(fā)布知識界面右下角顯示為發(fā)布按鈕發(fā)布知識測試輸入知識標題、內容為空,類別未選擇請輸入知識標題!輸入知識標題為為“IDEA”,內容為空,類別未選擇請選擇大類!輸入知識標題為為“IDEA”,內容為空,類別僅選擇大類請選擇小類!輸入知識標題為為“IDEA”,內容為空,類別選擇大類和小類請輸入知識!輸入知識標題為為“IDEA”,內容為“asdasdasdasdaa”,類別選擇大類和小類,發(fā)布成功上傳附件測試彈窗選擇文件上傳成功,附件列表顯示上傳的文件富文本測試插入圖片圖片在富文本編輯器中正常圖5-3發(fā)布知識界面5.3.4我的知識查詢測試 功能描述:按照狀態(tài)展示數據,進入我的知識界面需先登錄。修改知識按鈕和關閉知識按鈕在已關閉狀態(tài)的知識列表中不顯示,已采納標簽僅在已采納狀態(tài)知識列表中顯示。表5-4我的知識測試用例表序列測試目的測試內容測試結果測試說明我的知識界面登錄檢測未登錄狀態(tài)點擊我的知識菜單跳轉到登錄界面已登錄狀態(tài)點擊我的知識菜單跳轉到我的界面我的知識展示測試查看無評論狀態(tài)知識展示的知識列表項,評論數為0,修改知識按鈕和關閉知識按鈕正常顯示,沒有已采納標簽查看已評論狀態(tài)知識展示的知識列表項,評論數不為0,修改知識按鈕和關閉知識按鈕正常顯示,沒有已采納標簽查看已采納狀態(tài)知識展示的知識列表項,評論數也不為0,修改知識按鈕和關閉知識按鈕正常顯示,已采納標簽正常顯示查看已關閉狀態(tài)知識展示的知識列表項,修改知識按鈕和關閉知識按鈕隱藏圖5-4我的知識界面5.3.5知識分享測試功能描述:①展示某知識的詳細內容,以及展示此知識的評論信息。②可發(fā)表評論,評論按鈕按登錄狀態(tài)顯示。③若當前登錄用戶為知識發(fā)布者,可對評論進行采納。表5-5知識分享測試用例表序列測試目的測試內容測試結果測試說明知識詳情界面登錄檢測未登錄狀態(tài)進入知識詳情界面評論按鈕不顯示,而是顯示登錄按鈕已登錄狀態(tài)點擊知識詳情界面評論按鈕正常顯示當前登錄用戶為知識的發(fā)布者評論列表中的未采納評論,顯示采納按鈕知識詳情數據測試查看知識詳情內容知識的標題、內容、類別、發(fā)布時間、評論數等信息正常顯示數據正常顯示評論列表數據測試查看知識的評論展示的評論列表內容正常顯示,列表項數目也與知識的評論數一致數據正常顯示發(fā)布評論測試評論內容寫入“哇,可以哦”,隨意插入圖片,使用富文本中自帶的表情評論成功,自動刷新展示最新的數據圖5-5發(fā)布評論后效果圖5.3.6用戶管理測試功能描述:①展示系統中所有的用戶,包括普通用戶和管理人員。②在用戶列表僅可以修改管理員發(fā)布和評論狀態(tài),但不可修改登錄狀態(tài)。而普通用戶的話,三個狀態(tài)都可被修改。③在用戶列表不可對管理員用戶進行修改或刪除,故修改和刪除圖標隱藏不顯示。表5-6用戶管理測試用例表序列測試目的測試內容測試結果測試說明用戶列表展示測試查看用戶列表數據內容用戶信息數據正常展示查看管理人員的狀態(tài)欄僅顯示發(fā)布和評論的狀態(tài)數據顯示正常查看普通用戶的狀態(tài)欄顯示發(fā)布、評論、登錄的狀態(tài)數據顯示正常查看管理人員的操作欄修改和刪除圖標隱藏不顯示查看普通用戶的操作欄修改和刪除圖標

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論