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