【正文】
。但是,這些工具沒(méi)有與他人共享知識(shí),沒(méi)有與他人交流思想的功能,人們?cè)诓唤?jīng)意間發(fā)現(xiàn)自己習(xí)慣的知識(shí)管理方式已經(jīng)不再滿足個(gè)人知識(shí)管理日益?zhèn)€性化、社會(huì)化的趨勢(shì) [1]。 ( 1) 緒論 :介紹了 選題背景 、國(guó)內(nèi)外研究現(xiàn)狀分析和論文的最終實(shí)現(xiàn)目標(biāo)。類圖描述系統(tǒng)中類的靜態(tài)結(jié)構(gòu);對(duì)象圖是類圖的實(shí)例,使用標(biāo)志與類圖基本相同;包圖描述系統(tǒng)的分層結(jié)構(gòu),由類和包組成,表示包與包之間的關(guān)系。 MVC 并沒(méi)有提供模型的設(shè)計(jì)方法,而只告訴你應(yīng)該組織管理這些模型,以便于模型的重構(gòu)和提高重用性。 Model 由 JavaBean 組成,ActionForm 用于封裝用戶的請(qǐng)求參數(shù),封裝成 ActionForm 對(duì)象,該對(duì)象被ActionServlet 轉(zhuǎn)發(fā)給 Action, Action 根據(jù) ActionForm 里面的請(qǐng)求參數(shù)處理用戶的請(qǐng)求。此處當(dāng)使用 Session 這個(gè)術(shù)語(yǔ)時(shí),其實(shí)就是指 Hibernate 中的 Session,而將HttpSession 對(duì)象稱為用戶 Session。模板語(yǔ)言是強(qiáng)大的直觀的,編譯器速度快,輸出接近靜態(tài) HTML 頁(yè)面的速度。作為個(gè)人自學(xué)自冶的平臺(tái),此系統(tǒng)為用戶添加了備忘錄功能,用戶可以將今天沒(méi)有完成的工作,添加到備忘錄項(xiàng),備忘錄按時(shí)間順序排列顯示,最早添加的備 忘錄顯示在最前面,這樣有利于促使用戶查看所有的備忘錄。由上圖可知用戶的功能模塊有:日志管理、圖書管理、搜索站內(nèi)圖書、信息管理、收藏管理和備忘錄管理,由于系統(tǒng)名稱為個(gè)人數(shù)字圖書館系統(tǒng),所以在此就拿“圖書管理”這個(gè)用例的子用例作進(jìn)一步的說(shuō)明。 面向?qū)ο蟮脑O(shè)計(jì)原則 面向?qū)ο蟮脑O(shè)計(jì)應(yīng)具備三個(gè)特性:可擴(kuò)展性、靈活性、可插入性。 圖 書 下載排行 共享圖書 私有圖書 收藏圖書 圖 41 圖書模塊功能圖 由上圖可知功能模塊“圖書”下面的功能有查看下載排行、共享的圖書、自己私有的 圖書和收藏圖書,這其中當(dāng)然都是具備可下載性的。下面再給出系統(tǒng)中其它實(shí)體的 ER 圖和數(shù)據(jù)表。 圖 48 Model 包類的設(shè)計(jì) 由上圖知 Model包內(nèi)類的設(shè)計(jì)是按照系統(tǒng)實(shí)體來(lái)設(shè)計(jì)的以其相對(duì)應(yīng)的 Hibernate中的設(shè)計(jì)如圖 413 所示,此包中的類都只是定義了數(shù)據(jù)類型和其對(duì)應(yīng)的 get、 set 方法。 29 信息科學(xué)與技術(shù)學(xué)院學(xué)士學(xué)位論文 功能模塊層實(shí)現(xiàn) 功能模塊層 主要是針對(duì)系統(tǒng)中的具體功能的實(shí)現(xiàn),該層實(shí)現(xiàn) 是 通過(guò)面向 對(duì)象編程實(shí)現(xiàn),其實(shí)現(xiàn)包括在包 、 、 中, 在包中定義 模型類實(shí)現(xiàn)前臺(tái)與數(shù)據(jù)庫(kù)的連接 , 在包 中 進(jìn)行具體功能的 實(shí)現(xiàn) , 包主要起到一個(gè)引導(dǎo)跳轉(zhuǎn)的作用。 return ERROR。 } return true。 ()。 功能描述:點(diǎn)擊上傳下載按鈕上傳或下載資料 。 發(fā)現(xiàn)問(wèn)題:無(wú) 。懇請(qǐng) 各位老師和同學(xué) 們不吝賜教。 功能描述: 刪除資料。 測(cè)試輸出:登錄如圖 61, 62 所示,退出如圖 63 所示。 (new Date())。 Query query = (sql)。 return ERROR。 在進(jìn)行項(xiàng)目開發(fā)前需要將相關(guān)的Struts 2 和 Hibernate 的 核 心 jar 包導(dǎo)入的項(xiàng)目中 , 由于前臺(tái)頁(yè)面的顯示由Freemarker 實(shí)現(xiàn)所以也需將其對(duì)應(yīng)的 jar 包: 添加到項(xiàng)目中。 如本系統(tǒng)在用戶注冊(cè)的時(shí)候,就添加了數(shù)據(jù)格式的驗(yàn)證,驗(yàn)證用戶輸入的郵件是否是合法的郵件,這需要向系統(tǒng)添加一個(gè)配置文件: 同時(shí)在編寫 Action 的時(shí)候要繼承 ActionSupport 這個(gè)類,這樣就可以使用 Struts 自帶的檢驗(yàn)功能對(duì)客戶端請(qǐng)求進(jìn)行校驗(yàn)了。 以上部分實(shí)體對(duì)應(yīng)的 ER 圖如圖 43 所示。 ( 7) 迪米特法則:一個(gè)軟件實(shí)體對(duì)其他實(shí)體的引用越少越好,或者說(shuō)如果兩個(gè)類不必彼此互相通信,那么這兩個(gè)類就不應(yīng)當(dāng)發(fā)生直接的相互作用,而是通過(guò)引入第三者發(fā)生間接的交互。這些需求將在系統(tǒng)實(shí)現(xiàn)初步功能后逐步進(jìn)行完善。 個(gè)人數(shù)字圖書館注冊(cè)用戶的總用例圖如圖 32 所示。后臺(tái)主要用于管理員對(duì)整個(gè)系統(tǒng)的管理,后臺(tái)管理中,前臺(tái) 系統(tǒng) 10 信息科學(xué)與技術(shù)學(xué)院學(xué)士學(xué)位論文 的 所有 用戶 , 和用戶的所有資料文件 都能在后臺(tái)完全顯示,管理員可以刪除 用戶的每一個(gè)文件,也可以刪除每一個(gè)系統(tǒng) 注冊(cè) 用戶 。Freemarker 不是一個(gè) Web 應(yīng)用框架,而適合作為 Web 應(yīng)用框架,其與容 器無(wú)關(guān),因?yàn)樗⒉恢?HTTP 或 Servlet。通過(guò)這些接口,不僅 可以對(duì)持久化對(duì)象進(jìn)行存取,還能夠進(jìn)行事務(wù)控制。 因此, Struts 2 是一個(gè)非常 優(yōu)秀 的框架 ,其 具有組件的模塊化,靈活性和重用性的優(yōu)點(diǎn),同時(shí)簡(jiǎn)化了基于 MVC 的 web 應(yīng)用程序的開發(fā) ,還可以清晰地區(qū)分控制 、 事務(wù)邏輯和外觀,從而簡(jiǎn)化了開發(fā)應(yīng)用程序的過(guò)程。一個(gè)應(yīng)用可能有很多不同的視圖, MVC 設(shè)計(jì)模式對(duì)于視圖的處理僅限于視圖上數(shù)據(jù)的采集和處理,以及用戶的請(qǐng)求,而不包括在視圖上的業(yè)務(wù)流程的處理。 ( 3)創(chuàng)建一種對(duì)人和機(jī)器都適應(yīng)的建模語(yǔ)言。 還可以 在此平臺(tái)上發(fā)布日志、添加備忘錄、收藏網(wǎng)摘等 。后臺(tái) 系統(tǒng)管理員 的主要功能是查看和刪除系統(tǒng)用戶,查閱管理系統(tǒng)中的所有資料。 關(guān)鍵詞: 個(gè)人 數(shù)字 圖書館 , 知識(shí)共享 ,知識(shí)管理 II 信息科學(xué)與技術(shù)學(xué)院學(xué)士學(xué)位論文 Abstract With the advent of the information age, a large amount of information full of our eye, however, in the face of so much information, if we cannot very well manage it, which for us is just rubbish and not of any value, In this age of rapid development of the knowledge economy, personal development relies more and more of their a source of petitiveness is a personal knowledge management. In this case, as a tool for personal information management and knowledge anization personal rapid development of digital libraries, and personal digital library is a digital library in the development of new things, reflects the individual needs of information users under the work environment, is the objective requirement of work information resource management and development of knowledge management. This article with specific characteristics of individual digital library, books and information sharing, send each other information and library management theory knowledge, using object oriented programming method, and based on the current widely used in mainstream Web development framework: Struts, Hibernate, and Freemarker ponents build a digital library system of the individual. This system is mainly divided into the foreground and background in two parts. Front desk for registered users, each registered user has a personal digital library, the library is divided into: my stuff, my favorites, memos, information, logs, information search, books, and other large modules. Background system administrator39。 本文組織結(jié)構(gòu) 本論文主要是介紹了一個(gè)基于 JAVA EE 技術(shù)中使用廣泛應(yīng)用的 Struts、 Hibernate框架和 FreeMarker Java 組件 實(shí)現(xiàn)個(gè)人數(shù)字圖書館平臺(tái)的過(guò)程: 當(dāng)中 包括相關(guān)技術(shù)的理論介紹 、 需求 獲取 、系統(tǒng)設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)、 系統(tǒng)測(cè)試和調(diào)試。 UML 建模語(yǔ)言由五類圖來(lái)定義:用例圖、靜態(tài)圖、行為圖、交互圖、實(shí)現(xiàn)圖。業(yè)務(wù)流程的處理交予模型 (Model)處理。 Struts 2 對(duì) Model, View 和 Controller 都提供了對(duì)應(yīng)的組件。 Session 接口負(fù)責(zé)執(zhí)行被持久化對(duì)象的 CRUD 操作 (CRUD 的任務(wù)是完成與數(shù)據(jù)庫(kù)的交流,包含了很多常見的 SQL 語(yǔ)句 )。 Freemarker 同樣可以在非 Web 應(yīng)用程序環(huán)境中使用;不過(guò), FreeMarker 更適合作為 Model2 框架如 (Struts 2)的視圖組件;同時(shí),你也可以在模板中使用 JSP 標(biāo)記庫(kù) [10]。 在該系統(tǒng)上每個(gè)注冊(cè)用戶可以上傳自己認(rèn)為有價(jià)值的 資料 并可以共享給其他 注冊(cè) 用戶供其下載使用,如果不想讓其他用戶看到自己的資料,可以將文件設(shè)為私有,也可以在系統(tǒng)上搜索自己想要的資料 (搜素范圍僅限在本站) 。 注 冊(cè) 用 戶日 志 管 理圖 書 管 理信 息 管 理收 藏 管 理備 忘 錄 管 理搜 索 站 內(nèi) 圖 書登 錄 i n c l u d e i n c l u d e i n c l u d e i n c l u d e i n c l u d e i n c l u d e 圖 32 注冊(cè)用戶總用例圖 圖例說(shuō)明:在 UML 語(yǔ)法中,圖形化的小人表示參與者,橢圓圖形表示用例,一個(gè)用例 針對(duì)著一個(gè)具體的功能模塊。 15 信息科學(xué)與技術(shù)學(xué)院學(xué)士學(xué)位論文 4 個(gè)人數(shù)字圖書館系統(tǒng)設(shè)計(jì) 在分析清楚知識(shí)、知識(shí)管理、個(gè)人知識(shí)管理概念的前提下,尤其是在分析清楚個(gè)人數(shù)字圖書館系統(tǒng)功能的基礎(chǔ)之上,就可以進(jìn)行下步的工作 —— 系統(tǒng)的設(shè)計(jì)。 系統(tǒng)功能設(shè)計(jì) 由第三章的需求分析知系統(tǒng)的總體功能結(jié)構(gòu)圖如上章圖 31 所示。 18 信息科學(xué)與技術(shù)學(xué)院學(xué)士學(xué)位論文 用 戶信 息 描 述昵 稱密 碼用 戶 名用 戶 編 號(hào)性 別資 料 是 否 公 開郵 箱注冊(cè)上 傳空 間用 戶 名空 間 編 號(hào)總 容 量已 用 容 量未 用 容 量11我 的 資 料用 戶 名資 料 編 號(hào)資 料 名資 料 大 小下 載 量上 傳 時(shí) 間權(quán) 限上 傳刪 除1m1n 圖 43 實(shí)體 ER 圖 以上 ER 圖中實(shí)體對(duì)應(yīng)的數(shù)據(jù)庫(kù)表如下列 41, 42, 43 表所示。 業(yè)務(wù)邏輯層 Action 包內(nèi)類的設(shè)計(jì)如圖 47 所示。添加完相關(guān)的 jar 包后,還需對(duì)其作出相應(yīng)的配置。 } if ((null)) { 30 信息科學(xué)與技術(shù)學(xué)院學(xué)士學(xué)位論文 (theme_null, 主題不能為空 !)。 if (!().hasNext()) { (receivename_error, 此用戶不存在! )。 (message)。 發(fā)現(xiàn)問(wèn)題:無(wú) 。 輸入: 管理員已正常登陸,并選中刪除資料。 當(dāng)然,無(wú)論個(gè)人數(shù)字圖書館的功能多么齊全多么強(qiáng)大,操作多么便捷,如果使用者不能夠堅(jiān)持實(shí)施執(zhí)行,那么個(gè)人數(shù)字圖書館也只是個(gè)擺設(shè),個(gè)。 測(cè)試輸出: 檢查數(shù)據(jù)庫(kù)表和服務(wù)器中保存文件的位置知道文件已不存在。 35 信息科學(xué)與技術(shù)學(xué)院學(xué)士學(xué)位論文 圖 62 個(gè)人主頁(yè) 圖 63 用戶退出系統(tǒng)頁(yè)面 ( 2) 測(cè)試用例 2: 功能名稱: 上傳下載 。 ()。 return false。 } if ((null)) { (messcont_null, 發(fā)送內(nèi)容不能為空! )。characterEncoding=GB2312 /property property n