新聞管理系統設計與實現研究
時間:2022-11-06 10:42:26
導語:新聞管理系統設計與實現研究一文來源于網友上傳,不代表本站觀點,若需要原創文章可咨詢客服老師,歡迎參考。
摘要:針對傳統新聞管理系統存在的準確性低和時效性差等問題,為了增強新聞管理系統的信息交互,減輕網站更新維護的工作量,提高網站的更新效率,利用SpringMVC架構的高內聚低耦合開源框架技術思想和體系結構,應用Web前端開發技術,借助B/S模式,結合Java語言和MySQL數據庫,設計并開發了輕量級的新聞管理系統。給出了系統架構和Web模型設計,實現了用戶注冊登錄、新聞評論和系統后臺管理等功能。測試結果表明,在不同的操作系統和瀏覽器環境下,系統運行效果穩定,操作方便、快捷,其功能達到了設計要求,為實現新聞資訊的高效管理提供了可視化、可擴展的信息平臺,具有一定的實用價值。
關鍵詞:SSM框架;新聞;管理系統;B/S模式;SpringMVC框架;數據庫設計
新聞資訊作為信息的一部分,具有種類繁雜、形式多樣等特點。傳統的新聞信息來源方式簡單,傳遞途徑單一,傳播過程環節較多,信息的準確度降低,信息的時效性較差。隨著互聯網技術和人工智能的不斷發展,人們對新聞資訊的來源方式以及準確性和時效性都提出了更高的要求[1]。如何更好地解決諸如信息來源單一、準確性低和時效性差等問題,已經成為各行各業尤其是新聞出版領域從業人員十分關注的焦點。根據市場調查顯示,目前網站新聞的管理主要有兩種方式:一種是靜態HTML頁面,其更新信息時需要重新制作頁面,然后上傳頁面并修改相應鏈接,這種方式因為效率太低,基本上未被廣泛使用[2];另一種是基于ASP和腳本語言,將動態網頁和數據庫相結合,通過后臺的應用程序管理新聞[3],這是目前較為流行的做法。但是由于ASP技術本身的局限性使得現存的新聞系統還存在較多需要改進的缺陷。針對傳統新聞管理系統存在的準確性低和時效性差等問題,利用SpringMVC架構的高內聚低耦合模式[4⁃5],應用Java,Web等前端開發技術,借助B/S平臺模式,設計并實現輕量級的新聞管理系統,通過引用網絡數據庫,為網站新聞系統的高效管理提供可視化、可擴展的信息平臺,減輕網站更新維護的工作量,提高網站的更新速度,加快資訊信息的傳播,保持網站的活動力和影響力。
1SSM開源框架
SSM是一個輕量級開源框架集,包含Spring,SpringMVC和MyBatis三個部分,主要由Spring和MyBatis兩個開源框架整合而成,其中,SpringMVC是Spring中的部分內容,通常作為數據源較為簡單的Web項目的系統框架[6⁃7]。應用程序利用頁面發送請求給控制器,控制器調用業務層處理邏輯,邏輯層向持久層發送處理請求,持久層與數據庫進行交互,然后將結果返回給業務層,業務層將處理邏輯發送給控制器,控制器再調用視圖展現數據處理結果[8⁃9]。基于SSM框架的應用程序執行流程如圖1所示。1.1Spring框架Spring作為當前Java運用最廣泛的一個開源框架,它是一個輕量級的控制反轉和面向切面的容器類框架[10]。Spring通過控制反轉(IoC)技術,利用在配置文件中指定使用特定參數的方式調用實體類的構造方法來實例化對象,由Spring創建DI(依賴注入)直接使用,不再需要程序員應用new構造方法顯示新建一個對象,大大降低了系統中各個層面之間的依賴性。Spring面向切面的編程技術,在事務管理方面也具有獨特的優勢,利用自身提供的一套JDBC訪問模板,能夠較為容易地管理數據庫事務,實現日志記錄和安全控制。同時,Spring易于集成其他層的框架,使得每個層之間相互獨立,降低系統分層框架之間的耦合度。1.2SpringMVC框架SpringMVC作為Spring框架的后續產品,目前已經融合于SpringWebFlow,它在系統中接收用戶請求,其核心的DispatcherServlet承擔中介或前臺職責,將用戶請求通過HandlerMapping匹配Controller,從而具體對應請求所執行的操作。SpringMVC分離了控制器、模型對象和分派器以及處理程序對象等角色,這種分離讓系統更容易進行定制[11]。基于SpringMVC的Web工程模板可根據業務需求自動生成相應的代碼,達到高效、規范、便捷的目的,解決代碼復用問題。但SpringMVC主要負責表示層,在諸如事務管理、安全檢查等Service層服務的業務邏輯方面不能很好地支持,使得系統的可維護性不高,而與Spring框架結合使用可有效解決上述矛盾。1.3MyBatis框架MyBatis是基于Java的持久層框架,包括SQLMaps和DataAccessObjects(DAO)[12]。它使用簡單的XML或注解用于配置和原始映射,通過對象關系映射(ObjectRelationalMapping,ORM)將接口和Java的POJOs(PlainOldJavaObjects,普通的Java對象)映射成數據庫中的記錄,從而與關系型數據庫建立聯系。MyBatis的操作均圍繞sqlSessionFactory實例展開,通過配置文件關聯到各實體類的Mapper文件,Mapper文件中配置了每個類對數據庫操作所需進行的SQL語句映射,在每次與數據庫交互時,通過sqlSessionFactory得到sqlSession,再執行相應的SQL命令。用戶可以自己設計動態SQL語句和存儲過程,避免了傳統的JDBC代碼,簡化了傳統數據庫增刪查改操作的重復代碼,縮短了系統的開發周期,增強了系統的靈活性和可擴展性。
2新聞管理系統設計
新聞管理系統采用MVC設計模式,利用SpringMVC架構的高內聚低耦合開源框架,實現系統的功能模塊和顯示模塊之間的分離,提高了系統平臺的可擴展性、可維護性、可移植性和組件的可復用性,降低業務邏輯接口與數據接口之間的耦合度,有利于軟件系統的工程化管理。2.1系統功能需求分析及總體框架設計根據新聞與管理的實際工作流程,考慮到系統的主要使用對象是小型企業,因此,系統的功能需求為:通過本系統,企業可以和管理自身的新聞資訊信息;注冊用戶能夠通過評論與客戶進行良好地溝通交流;直接使用靜態HTML頁面,提高用戶的訪問效率;采用模塊開發增強系統的維護性;系統需要采用適當的加密功能以增強安全性;系統能夠根據普通用戶和管理員用戶類型設置不同的操作權限,普通用戶只能登錄進行主頁的操作,不能進入管理員界面,而管理員不僅可以進行管理員頁面操作,同時也可以進行主頁的操作。根據系統的功能需求分析,系統總體框架設計主要包含前臺設計部分和后臺設計部分[13]。系統前臺設計部分主要用于頁面顯示的操作,用于顯示系統已經的新聞列表及其相關具體信息,同時包括用戶注冊、用戶登錄和找回密碼等功能[14]。用戶登錄后可以和顯示新聞,也可以對已的新聞進行評論,同時通過個人中心顯示登錄后的用戶相關信息和評論內容。系統前臺功能結構如圖2所示。系統后臺設計部分主要用于管理員頁面的操作,主要劃分為新聞管理、評論管理和用戶管理三個具體模塊,通過增加、刪除、修改和瀏覽等功能,實現新聞系統的高效管理[15]。新聞管理模塊主要負責對新聞信息的瀏覽、修改、刪除和查詢等具體操作功能;評論管理模塊主要負責對新聞評論內容的瀏覽、刪除和查詢等具體操作功能,且只能查看評論的發表作者和評論時間;用戶管理模塊主要負責包括管理員在內所有用戶的修改、刪除、查詢和權限設置等具體操作功能。系統后臺功能結構如圖3所示。2.2數據庫設計數據庫設計是整個系統設計的關鍵,合理的數據庫能夠有效地管理后臺數據,既便于數據的集中管理和控制冗余,提高數據的使用率和一致性,又有利于程序的開發和維護,提高軟件的實用性。系統采用MySQL作為后臺數據庫,根據系統功能要求,需要有用戶(user)表、新聞信息(new)表、新聞評論(new_comment)表和新聞類型(category)表。其中,user表主要為了記錄系統中所有用戶的詳細信息,含有六個字段,分別為:user_id(用戶序號,主鍵)、user_name(用戶名稱)、user_password(用戶密碼,MD5加密)、user_email(常用郵箱)、user_age(用戶年齡)和create_time(注冊時間),數據庫中user表的結構如表1所示。新聞new表主要為了保存系統中所有新聞的詳細信息,含有7個字段,設計了3個主鍵,具體字段為:new_id(新聞序號,主鍵)、category_id(新聞類型序號,主鍵)、user_id(作者序號,主鍵)、title(新聞標題)、content(新聞內容)、create_time(時間)、key_words(關鍵字),數據庫中new表的結構如表2所示。
3新聞管理系統實現
根據總體設計方案和功能需求,系統利用SpringMVC架構的高內聚低耦合開源框架,應用Web前端開發技術,采用B/S模式,在JDK(JavaDevelopmentKit)1.8開發平臺中利用Java語言和MySQL數據庫實現了基于SSM框架的輕量級新聞管理系統的用戶注冊登錄、新聞評論和系統后臺管理等功能。3.1用戶功能模塊實現。1)注冊模塊實現用戶利用瀏覽器進入系統主頁,通過用戶注冊功能將增加的用戶信息保存并記錄于后臺數據庫,即可完成注冊過程。用戶注冊模塊通過調用SpringMVC框架,接收表單請求,采用JavaScript腳本在前端對注冊的用戶名、密碼和郵箱等必填信息進行合法性檢查。注冊信息合法后再傳入后臺進行數據驗證。首先將已注冊合法的用戶信息存儲到Redis二級緩存中進行沖突檢測,若Redis緩存中不存在該數據,則將用戶信息繼續傳入后臺數據庫進行數據檢測,若數據庫中也無該用戶信息,則向Redis緩存和數據庫中插入數據,返回,注冊成功,否則,提示注冊失敗。用戶注冊模塊的程序流程如圖4所示。2)登錄模塊實現用戶通過瀏覽器打開系統登錄頁面,登錄模塊利用Spring框架進行表單校驗,控制跳轉,調用相應的Service服務。首先采用JavaScript腳本在前端對用戶輸入的用戶名和密碼等登錄信息進行合法性檢測。然后,為防止用戶重復登錄,需將合法數據輸入Application和Redis二級緩存區中進行沖突查詢。若均未找到,則將用戶登錄信息再次傳入后臺數據庫進行數據對比和驗證。若數據正確,則返回登錄成功,否則,提示用戶名或密碼錯誤,重新進行登錄。用戶登錄模塊的程序流程如圖5所示。3)新聞和評論模塊實現用戶借助瀏覽器注冊登錄成功后,在系統首頁點擊添加文章,輸入文章的新聞標題、關鍵字,選擇相應的新聞類型,調用HTML可視化KindEditor編輯器在線編輯新聞正文部分內容后,點擊提交即可進行新聞。其中,新聞類型由系統根據輸入給定的數字序號對新聞進行分類判斷,比如娛樂為1、軍事為2、體育為3、社會為4、歷史為5、法制為6。用戶在瀏覽新聞的過程中,如果對某一新聞感興趣,可以發表自己的看法,在該條新聞正文的下方輸入框中添加自己想要發表的內容,點擊提交,對新聞進行評論,刷新頁面后,可在下方的全部評論中顯示評論內容。3.2管理員功能模塊實現。管理員功能模塊主要包括用戶管理、新聞內容和評論管理等功能。管理員利用瀏覽器登錄系統后,可以查看包括管理員在內所有用戶的用戶名、用戶類型、注冊郵箱、年齡、注冊時間等信息;可以設置普通用戶和管理員用戶的權限,普通用戶只能登錄進行主頁的操作,不能進入管理員界面,而管理員不僅可以進管理員頁面同時也可以進行主頁的操作,還可以對用戶進行強制下線和刪除修改等操作。管理員登錄后進入后臺管理頁面,點擊新聞列表可顯示新聞標題、作者、類別、關鍵字以及時間等有關新聞的所有信息。管理員能夠對其中的新聞進行查看、修改、刪除和審核等操作。同時,管理員可輸入新聞標題或時間等關鍵字進行模糊查詢和關鍵字查詢。管理員進入新聞評論管理模塊,能夠查看評論內容、評論作者和評論時間,也能夠對評論進行刪除和模糊查詢操作。
4新聞管理系統測試
4.1系統測試環境構建。根據新聞管理系統的設計方案,結合系統正常工作所需要的運行環境,針對系統設計的功能需求,搭建系統測試環境[16]:系統運行的硬件環境是CPU在1.0GHz以上、內存512MB以上;軟件部分要求操作系統平臺為Windows10;數據庫版本為MySQL5.1.46;服務器版本為Tomcat7.0以及瀏覽器使用IE10瀏覽器。4.2系統測試過程及結果。1)系統功能測試根據新聞管理系統設計的原型,測試過程按照系統需求逐一測試檢查每個模塊的功能是否完整,流程是否正確,各個模塊的銜接能否正常跳轉。主要測試能否正常注冊用戶、用戶能否正常登錄;登錄后測試用戶能否正常新聞、能否正常發表相關評論;測試管理員能否對新聞、評論和用戶等模塊進行正常的增加、刪除、修改和查詢操作。系統功能測試表明,新聞管理平臺能夠進行用戶注冊登錄和新聞評論,管理員能夠對新聞、評論和用戶等模塊進行管理操作,系統整體功能相對較少,但基本達到設計的預期效果。2)系統壓力測試為了檢驗新聞管理系統的處理能力,考察當前軟硬件環境下系統所能承受的最大負荷,測試系統能否維持在一個標準范圍內的穩定性,通過測試系統的瓶頸或者不能接受的性能點,從而獲取系統所能夠提供的最大服務級別,幫助找出系統的瓶頸所在。系統壓力測試采用基于Java的壓力測試工具ApacheJMeter,它可以對文件、腳本和數據庫、對象等靜態和動態的資源進行測試,針對服務器和網絡模擬繁重的負載,分析在不同壓力類型下系統的強度和整體性能。壓力測試結果表明,新聞管理系統經過500次并發訪問負載的測試,僅存在少量訪問異常,系統運行基本穩定,達到了預期的性能。3)系統兼容性測試為了適應不同用戶的系統使用需求,測試系統在不同操作系統和瀏覽器環境下運行結果是否正常。考慮不同用戶對操作系統的使用頻率,結合目前市面上常用的各種瀏覽器以及不同愛好用戶的使用情況,將新聞管理系統分別在Win7,Win8和Win10操作系統和IE,Chrome,Firefox瀏覽器下進行兼容性測試。測試結果表明,在不同的操作系統和瀏覽器環境下,新聞管理系統均能正常運行。
5結論
利用SSM輕量級開源框架技術體系思想,應用Web前端開發技術,借助B/S模式,結合Java語言和MySQL數據庫,設計并開發了輕量級的新聞管理系統,實現了用戶注冊登錄、新聞評論和系統后臺管理等功能。在不同的操作系統和瀏覽器環境下,系統運行效果穩定,操作方便快捷,其功能達到了預期的設計要求,增強了新聞管理系統的信息交互,提高了新聞類網站更新維護的效率,為實現新聞資訊系統的高效管理提供了可視化、易擴展的信息平臺。但在系統的功能拓展和并發訪問等方面,尚待進一步研究完善。
作者:牛懷崗 林關成 單位:渭南師范學院
- 上一篇:知識管理檔案管理者的挑戰與機遇
- 下一篇:電池管理系統設計分析