戴雯惠 翟高粵
[摘 要] 設備租賃管理對于使用設備較多的企業來說非常重要,本文以企業日常運營過程中的設備租賃作為研究對象進行了深入分析,結合租賃設備管理的實際需求,開發出一個基于Web的通用設備租賃管理信息系統,該系統在企業設備租賃管理中得到具體的應用。
[關鍵詞] 設備租賃;信息系統; SSH2框架
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2014 . 11. 027
[中圖分類號] TP311 [文獻標識碼] A [文章編號] 1673 - 0194(2014)11- 0040- 03
1 引 言
隨著市場經濟的發展,企業之間的合作交流也越來越頻繁,一些大中型企業,在產能得到保證和不影響生產的前提下,為了充分利用設備,減少閑置和折舊,提高設備的利用率,在固定的時間內,將設備出租給其他使用單位,按合同規定在租期內收取一定租金,提高設備的投資效益。對于通過租借得到設備使用的企業來說,可運用少量的資金使用急需的設備,提高企業的技術水平和企業競爭能力,花少錢,辦大事。據調查統計,目前大多數企業在設備租賃的管理中大多采用人工記賬方式,不僅管理效率低而且容易出錯,隨著市場的發展和租賃需求量的增加,租賃業務也會變得越來越多,傳統的人工記賬方式已經不能滿足企業的要求[1]。
本文研究的基于SSH2框架的企業設備租賃管理系統,有助于企業對設備租賃進行科學化管理,提高設備使用數據的準確性,減少工作人員的工作量,實時觀測各種設備的租賃情況和租金變化情況,具有較高的實用價值和科研價值。
2 系統開發技術介紹
系統開發采用目前最流行的SSH2(Struts2+Spring+Hibernate)框架,框架的系統從職責上分為3層:表示層、中間層(業務邏輯層)、數據服務層,采用框架結構有助于開發人員在短期內搭建結構清晰、可復用性好、維護方便的Web應用程序[2]。
2.1 Struts 2
Struts 2是Struts的第二代產品,是在Struts1和Web Work的技術基礎上合并的全新的、功能性和擴展性更強的框架。Struts 2以Web Work為核心,采用攔截器的機制來處理用戶的請求,使業務邏輯控制器能夠與Servlet API完全脫離。
2.2 Hibernate
Hibernate是一個開源的對象關系映射的持久化框架,可以用對象編程的思維來操作數據庫。通過HQL(Hibernate Query Language)語言直接操作持久化對象,由持久化對象的數據直接更新數據庫,使持久化對象的數據屬性值和數據庫中的值保持一致。
2.3 Spring
Spring 是一種多層的JavaEE應用程序框架,為JavaEE 應用的各層提供解決方案。Spring的核心是采用控制反轉(IOC)和面向切面編程(AOP)來管理業務對象以及它們之間的依賴關系。Spring是為了解決企業應用開發的復雜性而創建的,它使用基本的JavaBean代替EJB,并提供更多的企業應用功能。Spring的用途不僅僅限于服務器端的開發,任何Java應用都可以從Spring中受益。
2.4 SSH2框架
SSH2框架是典型的J2EE三層結構,分為表現層、中間層(業務邏輯層)和數據服務層。三層體系將業務規則、數據訪問及合法性校驗等工作放在中間層處理。客戶端通過組件與中間層建立連接,再由中間層與數據庫交互。
表現層采用JSP技術,中間層采用的是Spring+Hibernate,為了將控制層和業務邏輯層分離,又可細分為以下幾個子層。
Web層(Controller):負責控制業務邏輯層與表現層的交互,調用業務邏輯,并將業務數據返回給表現層,該層可由Struts完成。
業務邏輯層(Service):負責實現業務邏輯,業務邏輯以DAO層為基礎,通過對DAO組件的正面模式包裝,完成系統所要求的業務邏輯。
DAO層:負責與持久化對象交互,該層封裝了數據的增、刪、查、改等操作。
PO(持久化對象):通過實體關系映射工具(Hibernate)將關系型數據庫的數據映射成對象,實現以面向對象方式操作數據庫。
Spring貫穿了整個中間層,將Web層、業務邏輯層、DAO層及PO無縫整合。
2.5 MyEclipse開發平臺
MyEclipse 是一款優秀的JavaEE企業級開發工作平臺,它是功能豐富的JavaEE 集成開發環境,包括完備的編碼、調試、測試和發布功能,完整支持HTML、Struts、JSP、CSS、JavaScript、SQL、Hibernate和Spring 。
2.6 MySQL
MySQL是關系型數據庫管理系統,被廣泛地應用在Internet上的中小型網站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,許多中小型網站為了降低網站開發成本而選擇了MySQL作為網站數據庫。
2.7 PowerDesigner
PowerDesigner是Sybase公司的CASE工具集,使用它可以方便地對數據庫模型進行設計。
3 系統的設計與實現
3.1 系統功能介紹
企業設備租賃管理系統主要完成企業設備、客戶(租客)、企業員工、租賃情況、企業資金流等相關信息的管理并能夠將這些信息實時顯示或以報表的形式打印。系統的主要功能模塊如圖1所示。
各模塊說明如下:
企業新聞公告:實時發布設備租賃信息讓客戶了解企業設備租賃情況。
設備租賃業務:根據設備信息管理模塊提供的設備實時動態信息,業務員可根據客戶需要選中相應的設備并辦理相關手續,打印相關手續憑證和報表,實現結賬、設備信息更新、續租等功能。
客戶信息管理:實現客戶信息的添加、修改、刪除、查詢等功能,目的是建立客戶檔案,并可以實時查詢和修改。
設備信息管理:實現租賃設備信息的添加、修改、刪除、查詢等功能,目的是建立租賃設備檔案,并可以實時查詢和修改。
業務員管理:實現業務員信息的添加、修改、刪除、查詢等功能,目的是建立業務員檔案,并可以實時查詢和修改。
賬目管理:各種報表的查詢、統計及打印。
系統設置:系統環境相關的設定,查看登錄信息、修改密碼和注銷登錄。
數據統計與分析:能夠對設備、租賃情況、設備故障等系統數據進行統計和分析,為合理地進行設備租賃提供有效的數據支持。能夠對企業的財務狀況進行統計和分析,對現金流情況和盈利情況進行統計和分析,為公司領導正確決策提供有效的數據支持。
3.2 系統功能的實現
整個系統采用SSH2框架設計,對于系統來說,各個模塊的構造方法基本相同。下面以客戶預訂設備模塊為例,說明用SSH2框架實現設備租賃管理系統的開發過程。
3.2.1 客戶預訂設備模塊用例分析
設備租賃系統主要參與者是客戶和企業員工,其中客戶用例圖如圖2所示。
3.2.2 ER實體圖設計和Hibernate模型描述
本系統首先使用PowerDesigner進行數據建模并生成ER實體圖,然后將ER模型導入MySQL,生成物理數據表,最后,在 MyEclipse中使用導入物理數據表生成相對應的持久化實體類,并創建用于描述數據表和持久化實體類的、以 *.hbm.xml命名的Hibernate映射文件,從而實現JavaBean-MySQL-Hibernate的整合。具體代碼略。
3.2.3 模塊功能的實現
本系統采用業務邏輯層、數據層和表示層三層架構,所有模塊均根據接口來設計。以客戶預訂設備為例,由圖3可以看到 EqScheduledService 接口是業務邏輯處理層的接口,EqScheduledServiceImpl 類是業務邏輯處理層的實現類,EqScheduledDao 接口是數據持久層的接口,EqScheduledDaoImpl 是數據持久層的實現類。EqScheduledAction 類是顯示層中控制層中的類,用于接收頁面請求以及請求中的數據,并且對接收到的數據進行驗證和處理,然后以視圖或數據形式返回處理結果到客戶端。系統業務處理的一般過程是:用戶在頁面發出請求后,請求將被發送到Struts控制層中的一個以Action 為結尾的控制類;控制類接收到請求以及數據后,對數據進行驗證后再調用業務邏輯處理層中以 ServiceImpl 為結尾的業務邏輯處理類進行處理;如果需要操作數據庫,那么業務邏輯處理類會調用數據持久層中以DaoImpl 為結尾的數據持久層類對數據庫進行操作,并且返回處理結果給業務邏輯處理類,然后業務邏輯處理類再返回結果給控制層類,最后控制層類會返回視圖或數據給頁面。具體處理流程和關系詳見圖3。