宗冉 唐波 黃煜洲



摘要:JavaEE是軟件開發的一種常用架構,支持分布式環境下B/S結構的開發。該文針對科研項目管理中的實際需求,在中標麒麟操作系統和達夢數據庫的基礎上,基于JaveEE體系結構配置了SSH框架,設計了系統功能結構和數據庫結構,實現了項目管理、權限管理和數據庫訪問等功能,最終建立了一個科研項目管理系統。
關鍵詞:JavaEE;SSH;B/S;科研項目管理;信息系統
中圖分類號:TP315 文獻標識碼:A
文章編號:1009-3044(2019)32-0108-04
1概述
科研項目管理工作程序非常煩瑣,某單位雖然設有科研管理部門負責科研項目申請審批和項目計劃及實施的管理工作,但在工作中仍然以紙質文件為主,使用傳統的人工管理方式。紙質文件不易管理和保存,項目查詢困難,科研人員申請項目流程復雜,管理人員不能實時掌握單位科研情況,費時費力,不利于工作的高效進行。隨著信息技術的不斷發展,根據具體業務需求,各單位和高校都已經實現了對于科研項目的信息化辦公。本系統優化了科研管理工作流程,有效地將傳統管理模式轉化為信息化程度高的管理方式,方便規劃和計劃科研工作,為科研人員省去了來回辦理的時間,為決策管理層提供了實時有效地數據,能夠更好地掌握單位的科研能力水平。
2系統的設計
考慮到該單位對于科研項目管理系統的專用性和保密性,科研項目管理系統的開發設計采用具有國產自主知識產權的麒麟操作系統及達夢數據庫,系統根據分布式的需求采用JavaEE體系結構,開發工具為eclipse、網絡服務基于Tomcat。
2.1系統功能設計
科研項目管理系統主要為了滿足該單位對于科研項目計劃、申請批準、和數據信息查詢的需求。通過前期的系統需求分析,整合和優化了業務工作流程,設計科研項目管理系統的功能包括:規劃計劃管理、預先研究項目管理、重大專項管理、項目查詢、用戶和數據字典管理模塊,如圖1。
規劃計劃管理模塊:包括了該單位的發展戰略報告管理、年度計劃和五年規劃管理,具體包括規劃計劃的制定、下達、實施與總結。
預先研究項目管理模塊:包括了預先研究項目的申報和專家組評審,涉及項目申請和審批的流程設計和項目狀態的實時反饋,以及機關單位、各科研單位和審批專家的權限等功能。
重大專項管理模塊:涉及單位重大項目業務管理,包括了實施方案管理、規劃管理,信息管理和合同管理。
項目查詢模塊:可實現該單位的規劃計劃、科研項目及相關資料數據的查詢。
用戶和數據字典管理模塊:實現管理使用用戶的權限和管理操作范圍的功能。設置數據字典,分為業務數據字典和基礎數據字典。業務數據字典包含項目類型、主管部門、調整形式、規劃時間、成果形式、項目狀態、審核狀態、技術領域、國防科技重點實驗室、公用技術領域、經費來源類別、合同承包方式、合同定價方式及開支內容。基礎數據字典包括了性別、文化程度、職務級別、職務、民族、政治面貌。
2.2數據庫設計
經過前期需求分析,在數據庫的設計過程中,確定了各項數據對應的實體和對應屬性,繪制關系圖,通過創建ER圖來明確個實體之間的關系,如圖2所示。
考慮到單位對系統保密性的特殊要求本系統采用國產的達夢數據庫作為數據庫管理系統,同時它還具有良好的兼容性和通用性。
根據ER圖生成數據表如下:
1)用戶信息管理表
用戶具有不同的權限,這些權限包括項目查詢權限、審批權限,用戶僅能修改個人用戶信息,管理員權限可以進行信息的錄入和修改,不同部門擁有不同權限,有用戶都具有查詢的權限,如表1和表2。
2)項目信息數據表
2.3 Java EE開發環境
考慮到實際應用中的分布式需求,科研項目管理系統采用Java EE作為系統體系結構,Java EE架構通過把表現邏輯、業務邏輯和后端數據服務分割開來,向開發者提供了一種基于組件的設計、開發、裝配及部署企業應用程序的模塊化方式,提供了一個高性能的環境。
系統的開發架構選擇B/S框架,也就是瀏覽器/服務器架構,是當前信息管理系統采用最為廣泛的一種模式。該模式是將項目管理系統本身安裝在服務器端,客戶端通過瀏覽器可以實現對系統的管理,從而也降低了客戶端軟、硬件要求。該單位的科研部門分散在各個地方,這種通過互聯網瀏覽器實現對信息系統進行操作的方式很好地適應了該單位實際。因此,選擇B/S框架對該科研項目管理系統的實現。
系統的開發平臺框架采用了Java EE搭建,其主要的應用程序采用了SSH框架,其應用在JavaEE的三層結構,表示層、業務層和持久層。
頁面表示層主要由Struts2標簽的JSP頁面實現,Struts2可以完成控制器功能,其核心配置文件struts.xml主要負責管理全局屬性、用戶請求和響應操作的對應關系。對于Struts2框架來說,還需要在web.xml文件中配置FiherDispatcher核心控制器來加載Struts2框架,在web.xml文件中的配置如下:
在業務層,管理服務組件的SpringIOC容器負責提供業務模型(Modd)組件,和協作對象數據處理(DA0)組件完成業務邏輯。在持久層,依賴于Hibernate的對象化映射和數據庫的交互來處理DA0組件的請求數據,并返回處理的結果。
3科研項目管理系統的實現
3.1項目管理功能的實現
項目管理功能的目的是滿足維護各類項目的基本數據的需求,該功能實現用戶對科研項目的變動信息進行編輯、刪除和增加,同時還具有項目審核、文件導人、文件下載等功能。項目管理最終實現的功能界面如圖3所示:
3.1.3項目審核
項目審核功能是對于科研項目的申請進行審核,由申請人或單位登錄該系統,提交項目立項請示,由總部單位下達通知,管理部門進行審核是否可以立項并上報,總部單位審批通過后下達批復。評審過程由相關領域專家登錄該系統對項目進行評審,評審專家只能看到自己參加評審的項目,并給出審核意見。
3.1.4文件導入與下載
單位辦理業務時,需要實現發送文件和下載文件的管理功能,有向下級發送文件和接收文件的需求,這些發送或接收的文件應當方便用戶查看,因此系統支持了用戶對于已發送文件和接收文件的處理狀態查詢、報送單位、接收單位、文件名稱的查詢功能,同時需要具有文件導人和下載的功能。
3.2系統管理功能的實現
本科研項目管理系統涉及該單位的一些涉密信息,因此需要對用戶的訪問權限進行規范管理,支持管理員對用戶信息進行修改等。用戶也可以對個人基本信息進行編輯,包括用戶名、密碼、單位、職務等信息。
在統一認證之后,登錄獲取相應的ID,映射出不同的用戶賬號進行訪問,如圖4。當需要增加新的用戶時,只需要添加ID和其映射關系就可以了。在用戶登錄界面中,如輸入用戶密碼有誤,則會顯示提醒。
3.3數據庫訪問的實現
3.3.1基于JDBC實現數據庫的訪問
Java通過JDBC取得與要訪問的達夢數據庫相對應的JD-BCDriver,從而建立與達夢數據庫的連接。連接JDBC,可以在配置數據庫連接參數的jdbc.properties文件中進行配置,定義達夢URL連接串,定義JDBC驅動串,定義連接用戶名和用戶口令,其代碼如下:
4結束語
針對某單位科研項目管理效率較低,耗費人力的問題,本文開發了基于JavaEE的科研項目管理系統,在麒麟系統下采用JavaEE的SSH框架,以B/S模式為系統結構,結合使用了國產自主研發保密性更強的達夢數據庫,實現了對該單位科研項目的信息化管理,整合優化了工作流程,提高了管理工作效率,滿足了該單位實際工作需求。