隨著信息化在經(jīng)濟(jì)增長(zhǎng)中的作用的逐步增強(qiáng),使得企業(yè)的信息管理對(duì)企業(yè)的生存與發(fā)展的作用也日益顯得重要,信息技術(shù)的有效運(yùn)用對(duì)提高企業(yè)的經(jīng)濟(jì)效益,優(yōu)化企業(yè)資源配置,提高企業(yè)核心競(jìng)爭(zhēng)力,以及在未來(lái)拓展更大發(fā)展空間等方面起到舉足輕重的作用,同時(shí)企業(yè)管理也面臨著企業(yè)人員地理上的分散性、組織上的多樣性、資源上的異構(gòu)性等問(wèn)題,因此,從Internet獲取信息與基于Web技術(shù)管理企業(yè)資源和生產(chǎn)活動(dòng)越來(lái)越成為企業(yè)的迫切要求。這樣基于J2EE技術(shù)的企業(yè)信息管理系統(tǒng)也隨之就產(chǎn)生了。但現(xiàn)在很少有軟件產(chǎn)品的需求從一開(kāi)始就完全是固定的?蛻魧(duì)軟件需求,是隨著軟件開(kāi)發(fā)過(guò)程的深入,不斷明晰起來(lái)的。因此,常常遇到軟件開(kāi)發(fā)到一定程度時(shí),由于客戶對(duì)軟件需求發(fā)生了變化,使得軟件的實(shí)現(xiàn)不得不隨之改變,或是企業(yè)為了適應(yīng)時(shí)代的發(fā)展時(shí)不時(shí)的更新,拓展新的功能,而需要更新相關(guān)軟件,當(dāng)軟件實(shí)現(xiàn)需要改變時(shí),是否可以盡可能多地保留軟件的部分,盡可能少地改變軟件的實(shí)現(xiàn),本文研究基于SSH框架設(shè)計(jì)的企業(yè)管理系統(tǒng)的開(kāi)發(fā)能夠很好的解決上述問(wèn)題。
一 基于SSH框架的企業(yè)信息管理系統(tǒng)設(shè)計(jì)方案
1.1 系統(tǒng)的目標(biāo)與要求
系統(tǒng)的目標(biāo)有以下幾點(diǎn)。
第一,要求系統(tǒng)能夠幫助企業(yè)實(shí)現(xiàn)對(duì)企業(yè)內(nèi)部人員的基本情況進(jìn)行全面的跟蹤和管理;
第二,要求對(duì)企業(yè)的產(chǎn)品進(jìn)行全面的跟蹤和管理,并且能根據(jù)不同的用戶需求顯示出不同的產(chǎn)品信息;
第三,系統(tǒng)要求不同類型的管理員在系統(tǒng)中擁有不同的操作權(quán)限。
系統(tǒng)的要求有以下幾點(diǎn)。
第一,系統(tǒng)的易擴(kuò)展性;即要求系統(tǒng)能夠方便以后系統(tǒng)的功能拓展。
第二,堅(jiān)持易用性和易維護(hù)性原則;系統(tǒng)的易用性要求信息系統(tǒng)要具有軟件操作簡(jiǎn)單、界面友好,易于使用,易維護(hù)性即對(duì)系統(tǒng)的可測(cè)試性和可修改性。
第三,先進(jìn)性和開(kāi)放性原則;企業(yè)信息管理系統(tǒng)必須適應(yīng)本企業(yè)的實(shí)際狀況,系統(tǒng)應(yīng)采用先進(jìn)的軟件、硬件技術(shù),并且具有一定的領(lǐng)先優(yōu)勢(shì);具有適度的超前性。另外,方便與用戶的接口連接。
第四,經(jīng)濟(jì)性原則;在保證質(zhì)量的前提下,以較少的投入,從而獲得較大的效率。
第五,標(biāo)準(zhǔn)性原則;平臺(tái)符合當(dāng)前相關(guān)國(guó)家標(biāo)準(zhǔn)和行業(yè)標(biāo)準(zhǔn)。
1.2 系統(tǒng)的功能設(shè)計(jì)
針對(duì)系統(tǒng)的目標(biāo)與要求,采用模塊化設(shè)計(jì)方案來(lái)對(duì)本系統(tǒng)進(jìn)行功能設(shè)計(jì), 本系統(tǒng)主要?jiǎng)澐殖桑河脩舻卿、?quán)限管理、用戶信息管理、產(chǎn)品信息管理、日志信息管理、系統(tǒng)信息管理模塊,系統(tǒng)的各個(gè)模塊的功能如下。
(1)用戶登錄管理:該功能模塊主要是負(fù)責(zé)管理本系統(tǒng)的所有用戶登陸本系統(tǒng)。
(2)權(quán)限管理:主要是對(duì)本系統(tǒng)的所用登陸用戶的操作權(quán)限進(jìn)行管理,并且能根據(jù)用戶的需求,更改用戶的權(quán)限,或?qū)崟r(shí)創(chuàng)建分配新的用戶角色。
(3)用戶信息管理:主要是對(duì)企業(yè)的所有員工的相關(guān)信息進(jìn)行管理,并提供相關(guān)權(quán)限管理員增刪改查的接口,使得企業(yè)員工信息能夠?qū)崟r(shí)更新。
(4)產(chǎn)品信息管理:主要是對(duì)企業(yè)的產(chǎn)品信息進(jìn)行管理,主要是針對(duì)產(chǎn)品的生產(chǎn)流程信息,試驗(yàn)與檢測(cè)信息進(jìn)行相關(guān)操作,并要求對(duì)于不同要求的使用者可以呈現(xiàn)不同的顯示方案。
(5)日志信息管理:主要是針對(duì)所有登陸到本系統(tǒng)的人員對(duì)系統(tǒng)的所有操作信息進(jìn)行記錄,方便以后的維護(hù)與更新。
(6)系統(tǒng)信息管理:主要對(duì)系統(tǒng)的信息進(jìn)行管理,包括系統(tǒng)的相關(guān)配置信息,與系統(tǒng)的相關(guān)數(shù)據(jù)的備份等操作。
1.3 相關(guān)技術(shù)說(shuō)明
1.3.1 J2EE技術(shù)
J2EE是一種利用Java2平臺(tái)來(lái)簡(jiǎn)化企業(yè)解決方案的開(kāi)發(fā)、部署和管理相關(guān)的復(fù)雜問(wèn)題的體系架構(gòu)。它的基礎(chǔ)就是Java平臺(tái)或Java 2平臺(tái)的標(biāo)準(zhǔn)版,其不僅鞏固了標(biāo)準(zhǔn)版中的許多優(yōu)點(diǎn),例如“編寫(xiě)一次、隨處運(yùn)行”的特性、方便存取數(shù)據(jù)庫(kù)的JDBC API、CORBA技術(shù)以及能夠在Intemet應(yīng)用中保護(hù)數(shù)據(jù)的安全模式等等,同時(shí)還提供了對(duì)EntERPrise JavaBeans(EJB),Java Servlet API,Java Server Pages(JSP)以及XML技術(shù)的全面支持。其最終目的就是成為一個(gè)能夠使企業(yè)開(kāi)發(fā)者大幅縮短投放市場(chǎng)時(shí)間的體系架構(gòu)。
1.3.2 SSH框架
SSH框架是現(xiàn)在J2EE開(kāi)發(fā)的常用的一種開(kāi)源框架,是由Struts、Hibernate、Spring等三個(gè)框架組合而成。
其中Struts是一個(gè)基于Sun J2EE平臺(tái)的MVC框架,主要是采用Servlet和JSP技術(shù)來(lái)實(shí)現(xiàn),由于Struts能充分滿足開(kāi)發(fā)的需求,簡(jiǎn)答易用、敏捷迅速,在過(guò)去的一段時(shí)間里頗為受人關(guān)注。Struts把Servlet、JSP自定義標(biāo)簽和信息資源(message resources)整合到一個(gè)統(tǒng)一的框架中,開(kāi)發(fā)人員利用其不再自己編碼實(shí)踐MVC模式,而極大地節(jié)約了時(shí)間。其在SSH框架中起控制的作用,其核心是Controller,即Action,而Action的核心就是struts.xm1,主要控制邏輯關(guān)系的處理。
Spring是一個(gè)輕量級(jí)的控制反轉(zhuǎn)(IOC)和面向切面(AOP)的容器框架?刂品崔D(zhuǎn)模式的基本概念是:不創(chuàng)建對(duì)象,但是描述創(chuàng)建它們的方式。在代碼中不直接與對(duì)象和服務(wù)連接,但在配置文件中描述哪一個(gè)組件需要哪一項(xiàng)服務(wù),容器負(fù)責(zé)將這些聯(lián)系在一起。面向切面編程,即AOP,是一種編程技術(shù),它允許程序員對(duì)橫切關(guān)注點(diǎn)或橫切典型的職責(zé)分界線的行為(例如日志和事務(wù)管理)進(jìn)行模塊化。AOP的核心構(gòu)造是方面,它將那些影響多個(gè)類的行為封裝到可重用的模塊中。
Hibernate是數(shù)據(jù)持久化層,是一種新的對(duì)象、關(guān)系的映射工具,提供了從Java類到數(shù)據(jù)表的映射,也提供了數(shù)據(jù)查詢和恢復(fù)等機(jī)制,大大減少數(shù)據(jù)訪問(wèn)的復(fù)雜度。把對(duì)數(shù)據(jù)庫(kù)的直接操作,轉(zhuǎn)換為對(duì)持久對(duì)象的操作。
二 系統(tǒng)的總體設(shè)計(jì)
2.1 系統(tǒng)的總體設(shè)計(jì)
本系統(tǒng)主要是采用B/S架構(gòu)進(jìn)行設(shè)計(jì),采用J2EE技術(shù),并結(jié)合SSH開(kāi)源框架進(jìn)行開(kāi)發(fā),數(shù)據(jù)庫(kù)采用Oracle 11g,在系統(tǒng)的總體結(jié)構(gòu)設(shè)計(jì)上,采用分層的思想對(duì)系統(tǒng)進(jìn)行劃分,將系統(tǒng)分為三層架構(gòu),分別為:顯示層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問(wèn)層。他們之間的關(guān)系如圖1所示。
其中顯示層采用JSP、HTML以及Struts技術(shù),主要是實(shí)現(xiàn)用戶與系統(tǒng)之間的交互。中間層采用的是Spring+Hibernate技術(shù),主要實(shí)現(xiàn)系統(tǒng)的各業(yè)務(wù)邏輯操作。數(shù)據(jù)訪問(wèn)層采用Hibernate技術(shù),負(fù)責(zé)與持久化對(duì)象交互,該層主要是封裝了對(duì)數(shù)據(jù)庫(kù)的增、刪、查、改等操作。
2.2 系統(tǒng)的創(chuàng)新
在系統(tǒng)開(kāi)發(fā)過(guò)程中,采用輕量級(jí)的開(kāi)源框架SSH,實(shí)現(xiàn)對(duì)系統(tǒng)的總體及各功能模塊進(jìn)行開(kāi)發(fā)。集成框架采用的模塊化組合方式在保持系統(tǒng)結(jié)構(gòu)清晰的同時(shí),也有利于系統(tǒng)的并行開(kāi)發(fā)和測(cè)試,提高了開(kāi)發(fā)效率?蚣苁情_(kāi)源的,也為開(kāi)發(fā)節(jié)約了不少成本。同時(shí)為了利于系統(tǒng)功能拓展與更新,又結(jié)合了接口技術(shù),將對(duì)數(shù)據(jù)庫(kù)的所有操作封裝在Dao接口里,具體要實(shí)現(xiàn)訪問(wèn)數(shù)據(jù)庫(kù)的操作時(shí),只要通過(guò)繼承Dao接口,再實(shí)現(xiàn)接口內(nèi)的相關(guān)方法 將所有的具體實(shí)現(xiàn)類,都封裝在Daoimpl包內(nèi)。而具體各類業(yè)務(wù)邏輯操作封裝在Service接口里,針對(duì)具體的業(yè)務(wù)邏輯操作,可以通過(guò)繼承Service接口里的方法進(jìn)行實(shí)現(xiàn),并將其所有的實(shí)現(xiàn)類都封裝在Serviceimpl包里。這樣不僅規(guī)范了系統(tǒng)編程,還使得系統(tǒng)開(kāi)發(fā)顯得明朗,而且使得沒(méi)有參與項(xiàng)目開(kāi)發(fā)的人員,在很短的時(shí)間內(nèi)就能夠理解源代碼,從而有利于日后系統(tǒng)的維護(hù)與拓展。此時(shí),在本系統(tǒng)中,對(duì)象的調(diào)用流程是:JSP—Action—Service—DAO—Hibernate。同時(shí)當(dāng)系統(tǒng)軟件需要實(shí)行功能拓展時(shí),只需要在相關(guān)接口(可以是Dao或Service接口),或在添加新的接口中定義新的功能操作方法,然后在其實(shí)現(xiàn)類中完成相關(guān)操作的實(shí)現(xiàn),之后用戶只需要通過(guò)相關(guān)的Action類在添加的新JSP頁(yè)面或更改的原JSP界面上實(shí)行調(diào)用即可,同時(shí)在編寫(xiě)的過(guò)程中一定要注意Structs,xml和Spring-context.xml文件相關(guān)配置。這樣,原來(lái)的系統(tǒng)可以基本上不用改變,充分地體現(xiàn)了本系統(tǒng)的穩(wěn)定性與安全性。
三 結(jié)語(yǔ)
本系統(tǒng)采用SSH開(kāi)源框架結(jié)合接口技術(shù)進(jìn)行設(shè)計(jì),有效地解決了在開(kāi)發(fā)過(guò)程中的由于需求變更,或系統(tǒng)在功能拓展而產(chǎn)生的一系列問(wèn)題。本系統(tǒng)能有效的保證發(fā)生上述操作時(shí),原有系統(tǒng)可以保持可用或盡量不變的原則,并且在現(xiàn)實(shí)中我們也已經(jīng)取得了非常好的效果,值得在以后的商業(yè)開(kāi)發(fā)中的推廣。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:基于SSH框架的企業(yè)信息管理系統(tǒng)設(shè)計(jì)研究
本文網(wǎng)址:http://www.ezxoed.cn/html/solutions/1401934483.html