吳晨 毛玉萃 張樂



摘要:闡述了中華美食網站開發的必要性和可行性;介紹了采用SSM框架按照面向對象的開發方法進行開發的各階段;最后對該網站進行了測試與總結。
關鍵詞:SSM框架;JSP技術;數據庫;中華美食網站
中圖分類號:TP311.52 文獻標識碼:A
文章編號:1009-3044(2020)19-0070-03
開放科學(資源服務)標識碼(0SID):
1 背景
經濟的迅捷發展使得人們對于美好生活的理念標桿也不斷增高。單從日常生活中的衣食住行來看,同比上個世紀末,國人的習慣經歷了短短的二十年時間就已經發生了天翻地覆的變化。民以食為天,比起當初的追求溫飽,如今的人們在吃這一方面可謂是無所不用其極。而隨著近些年來自然食品越來越受到美食愛好者的歡迎,中華傳統美食越來越受到大眾的青睞。
為充分滿足用戶對于中華各種美食制作方法等相關信息了解和溝通的需求,開發了一款基于SSM的中華美食網站。本網站的開發充分地體現了網絡給人們帶來的極大方便,節省了用戶的時間。[1]
1.1國內外相關研究情況
雖然互聯網已經發展了很多年,國內美食相關的研究也相對詳細,但是在互聯網上概述性介紹中華美食的網站卻非常少,現在基本上只有在百科網站上有較為詳細的信息,偶爾會有一些關于美食的新聞及綜藝,但都僅涉及其中一部分,對中華美食這樣的一個大類缺乏系統性的歸納。由此可以看出國內有關中華美食的信息化工作還不夠完善,還需要讓更多人注意到相關方面的資源缺失,共同發展有關資源的開發和建設。
1.2 中華美食網站開發的必要性
現今網絡的發展越來越快,使用電子設備上網的人也是越來越多,各類信息管理網站積極涌現,無論是在校園或是辦公環境乃至生活的各個方面,一個好的網站都是節省社會資源的一大利器。為充分滿足用戶對于中華各種美食及其制作方法的需求,開發了中華美食網站。本網站的開發能夠讓想要增進對中華美食文化或者是對美食制作感興趣的人可以更方便地了解和分享資料與信息。基于SSM的中華美食網站在生活節奏越來越快的今天已有足夠的市場需求且能滿足眾多美食愛好者的需要。
2 中華美食網站的分析
整個網站的設計過程要考慮數據庫的安全性、一致性、穩定性和可靠性的問題,具有友好的界面,操作簡單。研究的目標是讓中華美食網站成為一個完善的在線美食分享與交流管理平臺,主要的研究方面是系統模塊的布局、商品信息的儲存等。為了到達上述目標,系統要實現的主要功能如下:
1)系統會員模塊:注冊登錄;個人中心;文章管理(發布、評論、刪除、修改、收藏文章);留言板。
2)后臺管理模塊:賬號信息管理;留言管理;版塊管理;評論管理。
網站功能模塊圖如圖1所示。
3 基于面向對象的中華美食網站的設計
3.1 架構設計
本網站采用SSM的框架進行開發,SSM框架是Spring+SpringMVC+MyBatis的簡稱。
1)Spring是一個開源框架,用戶可以在Spring的源代碼上進行修改和再創造。可以把Spring看作是一個容器,這個容器中包含有管控對象(包括對象的生命周期)的功能。Spring能夠實現面向切面編程,面向切面編程是在面向對象編程基礎之上衍生而來的。切面通常指代數據庫或者系統中的日志管理、安全管理等功能,通過在靜態的Java代碼中嵌入或調用這些切面以實現相應功能。
2)Spring MVC是SpringFrameWork的后續產品,它在Spring的基礎上將控制器、對象、分派器以及處理程序對象的角色進行了分離,使被開發的項目更具有獨立性,便于后續的修改與維護。
3)MyBatis主要特點是方便操作,只需安裝Jar包和數據庫映射文件便可投入使用,通過將數據庫中相關代碼采用嵌入式soL語句的方法寫在iava語言提供的相應文件中。使得系統的內存承擔量減少、提高了系統的內聚性。易于后臺維護與管理以及單元測試。
3.2 面向對象設計[2]
1)確定對象和類
類是多個對象的共同屬性和方法集合的描述,在本項目中主要有用戶類,美食類,新聞類;這些類又分為多個子類,如用戶類中有普通用戶,管理員;美食類中有川魯粵湘各大菜系;而新聞類中包括網站公告及普通文章。
2)確定結構
主要包括數據庫包(包含數據庫操作的相關類);實體包(包含對應數據庫中各個關系的關系類);方法包(包含登錄注冊等操作的各個方法類)。實體包提供與數據庫間實體的參照,是數據庫包和方法包的基礎;數據庫包基于實體包中的實體類,建立與數據庫的相關操作,并為方法包中的方法提供數據資源;方法包在實體包和數據庫包的基礎上,處理前端與后臺的連接、反饋等問題。
3)確定主題
主題就是對一件事情的概括,通常我們用一個簡短的短語將我們所要設計的內容加以表述。在網站設計中,需要通過各方面的分析與思考,對將要開發的系統的功能落實到技術層面。在本次開發過程中我們將設計分為三層,也就是前端頁面、處理方法和數據庫關系。
4)確定屬性
需要明確本系統中的各種類的屬性,并在對象中進行設計。
5)確定方法
明確本系統中的各種類的方法,即事物之間的消息傳遞關系。
消息傳遞:根據登錄角色不同,用戶從登錄模塊分別跳轉到普通用戶和后臺管理員的技術層面,在普通用戶模塊查詢信息時,后端會收查詢請求和條件,調用對應的soL語句,返回給Jsp界面(美食信息、文章)。管理員模塊審核文章時,審核成功文章則發布到公共平臺上,否則刪除審核文章。
4 基于SSM的中華美食網站的實現
4.1概念設計
概念結構設計是在需求分析的基礎上,建立數據庫的概念模型。在本項目中以E-R模型的形式來表示。通過對本中華美食網站進行需求分析和系統功能結構的確定,規劃出系統中使用的數據庫實體對象。主要實體有用戶實體、文章實體。賬戶實體為用戶登錄注冊使用的賬號,其中包括id、呢稱、登錄賬號、登錄密碼、用戶類型、賬號狀態、是否使用等屬性,主屬性為賬戶id。文章實體為最新的美食資訊,其中包括id(文章id),發布者id,標題,內容,時間等屬性,主屬性為文章id。[3]
用戶實體E-R圖如圖2所示,文章實體E-R圖如圖3所示。
4.2 邏輯結構設計
邏輯結構設計的任務是將概念設計階段所產生的數據庫概念模式變換為數據庫的邏輯模式,即關系表的形式。中華美食網站的數據庫在MySQL數據庫中進行搭建,主要由用戶表與文章表組成。
文章表結構如表l所示。用戶表結構如表1所示。
4.3 功能流程設計
用戶登錄成功后,根據數據庫中身份不同,獲得不同權限。系統流程圖如圖4所示。
4.4 系統運行結果展示
系統首頁如圖5所示。首頁主要包括頂部的導航欄、美食資訊以及版塊分類等,游客可以在導航欄的登錄注冊處進行注冊、登錄,依此來獲得更高的權限。此外,用戶可以點擊版塊查看不同類別的美食新聞;點擊留言板對網站提出建議、通過在搜索框中填人關鍵詞查看相應的美食新聞或信息。
5 系統功能模塊測試
在基于SSM的中華美食網站的設計中,主要采用黑盒測試的方式來對系統進行測試。測試的用例囊括了網站的功能是否能達到預期的要求,效率是否更高,系統是否有問題,這些都是關系到一個軟件項目生死存亡的重要事情。在測試過程中,對各個功能模塊進行分離測試,測試所有可能的結果并分析測試過程中出現的問題,記錄下測試過程中的現象。最后,對網站可能存在的問題以及性能的測試進行全面分析,并根據需求報告文檔中存在的項目功能模塊和用戶的需求來改善系統。其中,文章瀏覽模塊測試用例表如表3所示。[4]
通過對各個模塊的黑盒測試用例對中華美食網站進行系統測試,我體會到了系統測試對于一個軟件項目的重要性以及軟件項目開發的不易,并在測試過程中逐漸優化各項系統的性能,盡最大努力呈現一個界面友好、操作簡便、功能強大、覆蓋廣泛的中華美食網站,以達到用戶的良好操作體驗。在系統最終測試下,各項功能皆符合預期要求,未出現重大系統風險及漏洞,基于SSM的中華美食網站的測試環節順利完成結束。
6 結束語
本中華美食網站操作簡便、界面大方,在查看網頁信息時,用戶無需注冊登錄便能夠進行網頁的瀏覽。此外,本網站具有方便快捷的全方位數據信息搜索查詢、可輸入關鍵字進行商品信息的搜索查看、用戶可通過用戶后臺進行美食分享等管理、有較好的權限管理和分配等預期要求,滿足設計需要。
參考文獻:
[1]盧紅霞,方曉亮.社會化顧客價值在美食分享網站的應用研究[J].物流工程與管理,2015,37(11): 230-233.
[2]陳紅濤.從面向對象視角認識基于模型的系統工程[J].科技導報,2019,37(7): 36-43.
[3]薩師煊,王珊.數據庫系統概論[M].北京:高等教育出版社,2000.
[4]林勤花.黑盒測試用例設計方法及綜合應用[J].電子測試,2018(17): 88-89.
【通聯編輯:謝媛媛】
收稿日期:2020-04-25
作者簡介:吳晨(2000-),男,安徽蕪湖人,本科在讀;張樂(2000-),男,山西忻州人,本科在讀;毛玉萃(1964-),女,江西高安人,通訊作者,副教授,碩士,研究方向為信息系統和操作系統。