免费毛片网站/一级成人在线/91免费版黄色软件/亚洲丶国产丶欧美一区二区三区 - 网站一区

我國唯一的項目管理信息化門戶網站,國內項目管理軟件資訊服務提供商

登錄 注冊
當前位置:首頁 > 科研信息化 > 正文

基于Java EE的科研項目管理系統的設計與實現

2021-01-29 來源:《電腦知識與技術》作者:1. 國防科技大學電子科學學院;2. 國防科技大學計算機學院,宗冉1,唐波1,黃煜洲2
平臺框架采用了Java EE搭建,其主要的應用程序采用了SSH框架,其應用在Java EE的三層結構,表示層、業務層和持久層[5]。
頁面表示層主要由Struts2標簽的JSP頁面實現,Struts2可以完成控制器功能,其核心配置文件struts.xml主要負責管理全局屬性、用戶請求和響應操作的對應關系[5]。對于Struts2框架來說,還需要在web.xml文件中配置FilterDispatcher核心控制器來加載Struts2框架,在web.xml文件中的配置如下:
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPre?
pareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
在業務層,管理服務組件的SpringIOC 容器負責提供業務模型(Model)組件,和協作對象數據處理(DAO)組件完成業務邏輯。在持久層,依賴于Hibernate的對象化映射和數據庫的交互來處理DAO組件的請求數據,并返回處理的結果[6]。
3 科研項目管理系統的實現
3.1 項目管理功能的實現
項目管理功能的目的是滿足維護各類項目的基本數據的需求,該功能實現用戶對科研項目的變動信息進行編輯、刪除和增加,同時還具有項目審核、文件導入、文件下載等功能。項目管理最終實現的功能界面如圖3所示:
3.1.1 項目刪除
項目管理模塊代碼實現了對項目的刪除功能,用戶可以對項目進行刪減。
//刪除功能
public void delete(){
Queryer queryer= new Queryer();
queryer.addCondition("bh in(?)",(Object)ids);
List<Cgxx>modelList=cgxxManager.findList(queryer);
cgxxManager.batchDelete(modelList);
}
3.1.2 項目新增
項目新增功能,可以使得新添項目進入到列表頁面,方便用戶點擊查看項目詳細信息。
//新增功能
public void add(){
List<Fj>fjs=fjManager.parseFiles(uploads,uploadsFileName);
for(int i=0;i<fjs,size();i++){
fjs.get(i).setFjlx(fjlx[i]);
}cgxxManager.add(model,fjs);
}
3.1.3 項目審核
項目審核功能是對于科研項目的申請進行審核,由申請人或單位登錄該系統,提交項目立項請示,由總部單位下達通知,管理部門進行審核是否可以立項并上報,總部單位審批通過后下達批復。評審過程由相關領域專家登錄該系統對項目進行評審,評審專家只能看到自己參加評審的項目,并給出審核意見。
public void add(){
List<Fj>fjs=fjManager.parseFiles(uploads,uploadsFileName);
model.setShrq(new Date());
model.setShr(GXZCHelper.getCurrentUserTrueName());
shyjManager.add(model,fjs);
}
在專家審核過項目內容后,還需要對修改的狀態進行修改,代碼如下:
public void editShzt(){
shyjManager.editShzt(model,type);
}
3.1.4 文件導入與下載
單位辦理業務時,需要實現發送文件和下載文件的管理功能,有向下級發送文件和接收文件的需求,這些發送或接收的文件應當方便用戶查看,因此系統支持了用戶對于已發送文件和接收文件的處理狀態查詢、報送單位、接收單位、文件名稱的查詢功能,同時需要具有文件導入和下載的功能。
文件導入的核心代碼如下:
public void jswjImport(){
File file=getUploads()[0];
DefaultXMLParseStrategy strategy=DefaultXMLParseStrategy.
newInstance();
XMLParser parser=new XMLParser(strategy);
Map<Class,XMLData>dataMap=(Map<Class,XMLData>)pars?
er.parse(file.getAbsolutePath());
jswjManager.saveJswjImortData(dataMap);
}
文件下載的核心代碼如下:
public void downLoad(){
Queryerqueryer=nwQueryer();
queryer.addCondition("bh in(?)",(object)ids);
List<Jswj>modelList=jswjManager.findList(queryer);
if(modelList.size()==1){
outJson(modelList.get(0).getWjlj());
return
}
File jswjTempDir=wjmlglManager. getUniqueTempDir(Con?
stant.WJMLGL_LX_JSWJ);
DateFormat format=new SimpleDateFormat("yyyyMMd?
dHHmmssms");
String fileName=StringUtiil.joinArray(format.format(new Date
()),model.getClass().getSimpleName(),".zip");
File file=new File(jswjTempDir.fileName);
List<File>jswjFiles=new ArrayList<File>();
List<String>names=new ArrayList<String>();
for(Jswj jswj:modelList){
jswjFiles.add(new File(jswj.getWjlj()));
names.add(jswj.getWjmc());
}
names=FileUtil.processSameFileName(names);
FileUtil.crateZip(file.getAbsolutePath(),jswjFiles,names);
outJson(file.getAbsolutePath());
}
3.2 系統管理功能的實現
本科研項目管理系統涉及該單位的一些涉密信息,因此需要對用戶的訪問權限進行規范管理,支持管理員對用戶信息進行修改等。用戶也可以對個人基本信息進行編輯,包括用戶名、密碼、單
分享到:

免責聲明:
  1、項目管理信息化網發布的所有資訊與文章是出于為業界傳遞更多信息之目的,并不意味著贊同其觀點或證實其描述。其原創性以及文中陳述文字和內容未經本站證實,對本文以及其中全部或者部分內容、文字的真實性、完整性、及時性本站不作任何保證或承諾,請瀏覽者僅作參考,并請自行核實相關內容。
  2、本站部分內容轉載于其他網站和媒體,版權歸原作者或原發布媒體所有。如文章涉及版權等問題,請聯系本站,我們將在兩個工作日內進行刪除或修改處理。敬請諒解!

延伸閱讀:

more>

會議活動

more>

公開課

more>

PMO

Copyright ? 2021 項目管理信息化網 版權所有 京ICP備17062359號-9 如轉載本站文章,請注明原作者和原發布媒體

本著互聯網分享精神,本站部分內容轉載于其他網站和媒體,如內容涉及版權等問題,請聯系本站進行刪除或修改處理

客服電話:010-89506650 89504891 非工作時間可聯系:18701278071(微信) QQ在線:574888227

新聞與原創文章投稿:tougao#cpmta.com 客服郵箱:info#cpmta.com(請將#換成@)

我國唯一的項目管理信息化門戶網站,國內項目管理軟件資訊服務提供商,隸屬卓橡公司

項目管理信息化微信公眾號

PMO大會微信公眾號