韓洪勇 朱珍珍 姚連達

摘 要:隨著我國市場經(jīng)濟的不斷發(fā)展和信息化水平的提高,如何使用先進的信息化的手段來管理商品信息,成為當(dāng)今社會面臨的重要的問題,商品信息管理系統(tǒng)應(yīng)時而生。信息管理系統(tǒng)是基于Mysql數(shù)據(jù)庫、SSH框架實現(xiàn)的。本文基于SSH框架的介紹、商品信息管理系統(tǒng)的需求分析以及商品信息管理系統(tǒng)的設(shè)計。
關(guān)鍵詞:SSH;商品信息管理系統(tǒng);設(shè)計
一、SSH框架介紹
SSH框架是指Struts2、Spring、Hibernate三個框架的縮寫。Struts2是一種基于MVC模式的輕量級的Web框架。Struts2是在Struts1和WebWork技術(shù)的基礎(chǔ)上進行合并之后的一種全新的框架,采用攔截器的機制來處理用于的請求,將業(yè)務(wù)邏輯控制器和ServetAPI完全脫離開。Struts具有提供簡單、集中的配置來調(diào)度業(yè)務(wù)類,使得配置和修改變得容易,提供Exception處理機制和Ajax支持等優(yōu)點。
Spring是一個分層的輕量級的Java開發(fā)框架,該框架的主要優(yōu)勢之一是分層架構(gòu),分層架構(gòu)允許使用者選擇使用哪一個組件,同時為J2EE應(yīng)用程序開發(fā)提供集成的框架。Spring使用基本的JavaBean完成以前只可能由EJB完成的事情。Spring的核心是控制反轉(zhuǎn)(IOC)和面向切面(AOP)。JavaEE開發(fā)中分成三層結(jié)構(gòu):WEB層、業(yè)務(wù)層、持久層。Spring具有以下優(yōu)點:(1)方便解耦,簡化開發(fā)。可以理解Spring就是一個大的工廠,可以實現(xiàn)將所有的對象創(chuàng)建和依賴關(guān)系維護都交給Spring來管理。(2)AOP編程的支持。Spring提供面向切面編程,可以方便的實現(xiàn)對程序進行權(quán)限攔截、運行監(jiān)控等功能。Hibernate是一個開源的ORM(Object Relational Mapping)框架。Hibernate框架是Java的持久層框架之一,它對JDBC進行了輕量級的對象封裝,使得Java開發(fā)人員可以使用面向?qū)ο蟮木幊趟枷雭聿僮鲾?shù)據(jù)庫。具有簡單、靈活性強、拓展性強等特點。
二、需求分析
(一)用戶需求分析
用戶分為管理員、查詢?nèi)藛T、編輯人員、審核人員。所有用戶都具備注冊、登錄的功能。管理員主要是負責(zé)用戶的增加、刪除、修改、查詢。查詢?nèi)藛T主要負責(zé)產(chǎn)品的模糊查詢。編輯人員負責(zé)產(chǎn)品信息的錄入和修改。審核人員主要負責(zé)產(chǎn)品的上架和下架。
(二)系統(tǒng)需求說明
商品信息管理系統(tǒng)可以同時處理上萬的商品數(shù)據(jù),因此要求系統(tǒng)的查詢的時間較短,需要不斷優(yōu)化查詢時間和處理時間。商品數(shù)據(jù)中幾乎大部分商品都有商品的照片,因此該系統(tǒng)必須可以上傳圖片。在管理員和查詢?nèi)藛T進行用戶查詢的時候,可以查詢用戶的登錄密碼,因此要求用戶的密碼必須要求加密處理,這里要求密碼MD5加密。在產(chǎn)品的查詢中由于數(shù)據(jù)過多,要求每頁只顯示10條數(shù)據(jù),數(shù)據(jù)可以進行分頁處理。
商品基本信息:商品有商品的ID信息,要求商品的ID是自增的。除此之外還有:商品的條碼信息、商品的分類ID、商品的名稱、商品的價格、商品的logo照片、商品的描述圖片、商品的狀態(tài)(商品上架還是未上架)。
用戶的基本信息:用戶的ID、用戶名、用戶密碼、用戶的角色。
三、系統(tǒng)開發(fā)平臺
(一)系統(tǒng)開發(fā)語言
本系統(tǒng)使用Java作為系統(tǒng)的開發(fā)語言。Java在做JavaWeb開發(fā)里有較多的框架可以使用,可以加快JavaWeb的開發(fā)速度,提高開發(fā)的效率。
(二)系統(tǒng)數(shù)據(jù)庫
本系統(tǒng)使用的數(shù)據(jù)是MySql數(shù)據(jù)庫。MySql是開放源代碼沒有版權(quán)限制使用成本低,并且該數(shù)據(jù)庫服務(wù)穩(wěn)定很少出現(xiàn)宕機的情況。
四、系統(tǒng)部分功能介紹
(一)用戶的權(quán)限
用戶的權(quán)限的設(shè)置是在登錄頁面進行設(shè)置的。用戶輸入賬號、密碼,然后在下方選擇用戶的角色:管理員、編輯人員、審核人員、查詢?nèi)藛T。當(dāng)用戶選擇完成之后會和用戶數(shù)據(jù)庫中的信息進行比對。因為之前在用戶的數(shù)據(jù)庫中有用戶的用戶名、密碼和用戶權(quán)限的相關(guān)信息,如果用戶的用戶名、密碼和用戶的權(quán)限信息匹配成功,那么就登錄到用戶的相關(guān)權(quán)限的界面里面去。因為用戶的權(quán)限不同,用戶的界面也不相同。
(二)用戶密碼MD5加密
在實現(xiàn)MD5加密用戶密碼這個功能點時,目前主要有以下三種方法:一種是使用原生的Java包,然后我們自己手寫一個MD5加密的工具類。第二種方法是使用Spring中提供的DigestUtils.md5DigestAsHex來對密碼進行加密。本系統(tǒng)使用是mysql中內(nèi)部的md5的加密的函數(shù)。
五、結(jié)論
Hibernate中將開發(fā)更對象化,拋棄了以數(shù)據(jù)庫為中心的思想,是完全面向?qū)ο蟮乃枷搿5窃谔幚砼繑?shù)據(jù)時候有弱勢,并且針對于批量的刪除、修改,不適合用Hibernate。而Spring的缺點在于要在JSP中要寫很多代碼。
參考文獻:
[1]李剛.輕量級Java EE企業(yè)應(yīng)用實戰(zhàn)[M].電子工業(yè)出版社,2011.
[2]瘋狂軟件.Spring+MyBatis企業(yè)應(yīng)用實戰(zhàn)[M].電子工業(yè)出版社,2017.
作者簡介:韓洪勇(1999-),男,山東青島人,現(xiàn)于山東科技大學(xué)攻讀學(xué)士學(xué)位,目前主要從事于計算機科學(xué)與技術(shù)的專業(yè)研究。