APP下载

基于ssh2架构的科研管理系统设计与实现

2013-10-09

河北能源职业技术学院学报 2013年3期
关键词:科研人员数据库模块

毛 蔚

(江苏省无锡交通高等职业技术学校,江苏无锡 214151)

引言

随着科技的日益发展,高校的科研活动和科研能力已成为高效综合实力的重要指标,从而导致了高校的科研工作和统计工作不断庞大和加重。而目前大多数高校科研管理工作很大程度上还要依赖人工来处理,即通过EXCEL、WORD等办公软件或者简单的数据库采集系统来处理大量的数据,这种方式不仅给科研管理人员带来了繁重的工作量,并且造成科研管理人员和科研工作人员之间缺少必要和及时的沟通,难以反映高校科研现状,造成信息传递流转失真而且速度慢。

在当前形式下,通过IT技术等信息化手段,实现科研管理信息化,以加强日常科研工作管理,整合科研工作流程,为决策层提供真实有效的参考依据,从而提升科研管理水平,也是当今高校科研管理的趋势。

通过科研管理系统建设,可以实现科研工作的网络化管理,形成一个动态的科研数据中心和科研管理沟通平台,全面、实时,准确提供学校的有关科研信息。服务于高校科研工作人员的工作,辅助领导进行科研管理决策,从而为科研管理人员开展工作提供极大的便利。鉴于此,结合无锡交通高等职业技术学校科研管理实际情况,提出了高校科研管理信息系统开发的整体解决方案:(1)WEB方式的管理系统,(2)基于数据库和JAVA平台的系统。

本文主要是对科研管理系统的设计的研究。系统主要应用动态网页设计技术与数据库管理技术相结合,实现用户登陆、用户验证、用户信息管理、权限管理、科研项目管理、网上办公管理、科研资源管理、科研人员管理、科研成果管理、科研经费、科研交流活动、我的信息等功能。

1.系统及数据库设计

1.1 架构设计

该系统是基于B/S(Browser/Server,B/S)架构的三层结构的体系结构,即浏览器和服务器结构。在这种结构下,用户工作界面是通过浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层结构。这样就大大简化了客户端电脑载荷,减轻了系统的维护与升级的成本和工作量,降低了用户的总体成本。

系统从结构上分为四4层,即表示层、业务逻辑层、数据访问层和基础数据库。基于基础数据库上,是系统的数据访问层,整合了对数据库的CRUD操作。结合科研的日常管理,在数据访问层之上,系统提供了数据审核、项目流程管理、绩效考核以及年度统计等核心业务。显示层是科研管理系统对外交互的窗口,系统中能将基础数据和用户联系在一起,在表示层上及时发布动态的科研信息,也能通过网络接收用户录入的科研数据和审核数据。系统层次结构示意图如图1所示。

图1 系统层次结构示意图

本系统采用的是经典的J2EE三层结构,分为表现层,中间层(业务逻辑层)和数据服务层。三层体系将业务规则、数据访问以及合法性校验等工作放在中间层处理。客户端不直接与数据库交互,而是通过组件与中间层建立连接,再由中间层与数据库交互。并利用 Struts2、Hibernate3、Spring2等轻量级框架实现三层结构的设计。Struts将MVC的Controller一分为三,在获得结构更加清晰的同时,也增加了系统的复杂度。Hibernate简化了原始的JDBC操作。使得对数据库简单、方便、安全的操作。而Spring也是一款轻量级的框架,它能实现struts和hibernate的无缝集成,而且它还有一个最大的特色就是依赖注入,简化了程序员对项目的操作。Spring对Hibernate进行了封装,提供了HibernateTemplate简化 Hibernate操作。采用S2SH框架在开发速度比较正常的java项目会提高不少,维护比较方便,可拓展性强,加上一堆的开源,可以丰富系统。

1.2 界面设计

设计界面,主要采用DIV+CSS+Table布局的方式来对整个系统的页面进行布局,以达到界面的统一和美观。前端脚本使用JQuery以及JQuery插件:jquery tree,jquery-ui,formValidator等。Jquery是继prototype之后又一个优秀的Javascrīpt框架。它是轻量级的js库(压缩后只有21k),它兼容CSS3,还兼容各种浏览器(IE 6.0+,FF1.5+,Safari 2.0+,Opera 9.0+)。jQuery使用户能更方便地处理HTML documents、events、实现动画效果,并且方便地为网站提供AJAX交互。jQuery还有一个比较大的优势是,它的文档说明很全,而且各种应用也说得很详细,同时还有许多成熟的插件可供选择。jQuery能够使用户的html页保持代码和html内容分离,也就是说,不用再在html里面插入一堆js来调用命令了,只需定义id即可。jQuery库包含以下特性:HTML元素选取,HTML元素操作,CSS操作,HTML事件函数,JavaScript特效和动画,HTML DOM遍历和修改,AJAX,Utilities所以利用 Jquery 替代 Javascript,AJAX是一个很好的做法。

1.3 系统模块设计

1.3.1 系统登录模块

(1)对系统用户身份验证,对没有登录的用户不准许访问任何页面。

(2)根据用户权限不同,在系统的主页面左侧菜单展示该用户的权限菜单。

1.3.2 权限管理模块

权限管理是对登录用户进行权限控制的模块。包括:用户管理、模块管理、功能管理、角色管理。

1.3.3 综合办公模块

综合办公模块包括2个模块,系统公告管理、站内信发送送通知给科研人员。

1.3.4 科研资源维护管理模块

维护部门信息以及维护科技成果积分、岗级积分、职称积分、专利性质属性、项目性质属性、刊物性质属性、著作性质属性。

1.3.5 科研人员模块

科研人员是对教师信息(或科研人员)信息维护,审核的功能。

(1)科研人员管理:科研人员录入,修改,删除,查看。

(2)科研人员审核:科研秘书对科研人员的信息进行审核,默认状态下是系统审核通过状态,如果审核通过则状态更改为院级审核通过。

1.3.6 科研项目模块

科研项目分为项目管理,项目人员分配子模块。

(1)项目管理:该模块有项目审核,对科研人员提交的项目进行审核通过或者审核不通过操作。项目信息管理,对项目信息录入,修改,删除等操作以及项目人员,合同经费的维护操作。

(2)项目人员分配:在创建科研项目,选择项目负责人,然后项目负责人为项目分配人员,并且为人员设置科研积分。

1.3.7 科研成果模块

(1)论文成果管理:科研人员对自己的论文进行新增、编辑、查询等操作。

(2)著作成果管理:科研人员对自己的著作进行新增、编辑、查询等操作。

(3)发明专利管理:科研人员对自己的专利进行新增、编辑、查询等操作。

1.3.8 科研经费模块

科研经费分为经费管理和查看,通过科研经费管理后台能够管理科研项目收入和支出经费以及查看项目经费详细清单。

1.3.9 科研交流活动模块

1.3.10 我的信息模块

1.4 数据库设计

1.4.1 数据库结构设计

将需求分析得到的用户需求抽象为信息结构及概念模型的过程是概念结构设计。为了描述数据库结构的概念模式,这里采用E-R图来描述数据库的实体关系。

用户表数据项主要包括:用户ID、用户名、用户密码、性别、邮箱、QQ号、工号、创建时间、状态。

1.4.2 数据库物理设计

为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计。使用数据库开发软件MySql建立一系列的数据库。

2.系统具体实现

利用MyEclipse创建工程名为kyxm的WEB项目,使用S2SH技术搭建MVC模式框架,本系统是实时与数据库进行交互的系统,所以利用Hibernate连接池和它封装的方法与数据库进行交互。为了便于方面管理HQL或者SQL,现把SQL、HQL语句封装在一个XML文件中。系统设计的框架如图2所示。

图2 系统设计框架图

通用层为各个层提供了处理字符串、处理日期、从XML文件中读取HQL或者SQL语句的方法。另外提供分页组件以及Struts2分页封装类。数据访问层提供实体类和通用的数据处理的抽象类和接口。实现类只要继承抽象类和实现接口即可使用封装好的方法,也增加其他的方法。

业务层提供了通用的业务处理的抽象类和接口。实现类只要继续抽象类和实现接类和实现接口即可使用封装好的方法,也增加其他业务方法。视图控制层提供了Struts2 Action的基类以及实现类和Action的过滤器以及页面封装表单数据或者查询条件的DTO类。

本系统的特点结构清晰,封装性比较强,通用功能比较多,代码重用比较高,使用连接池连接数据库等。

3.系统测试

测试方案主要是根据软件测试工程中所主要采用的工具和技术,软件测试技术主要包括:黑盒测试、白盒测试、自动化测试。

本系统采用黑盒测试方法,整个过程采用自底向上,逐个集成的方法,依次进行单元测试、组装测试,测试用例的设计应包括合理的和不合理的输入条件。

本文以综合办公子系统测试为例说明。

目的:测试综合办公子系统所有功能

内容:(1)公告管理查询、创建、查看、删除

(2)站内信管理查询、增加、查看发送对象。具体见表1、表2。

表1 公告管理测试子系统结果

表2 站内信管理测试结果

4.总结

本系统的开发解决高职院校科研管理的深层次突出矛盾,实现了科研信息的及时搜集、汇总和双向交流,达到了对科研信息的全面、动态管理,提高了管理的规范化、科学化水平。同时也配合数字化校园建设,逐步实现高职院校的各项管理、教学、科研与服务的网上应用系统的开发,满足高职院校教育信息化的要求。

[1] 封超.Tomcat与Java Web开发技术详解[M].清华大学出版社,2011.

[2] 飞思科技产品研发中心.JSP应用开发详解[M].电子工业出版社,2007.

[3] 孙卫琴.精通Hibernate:Java对象持久化技术详解[M].电子工业出版社,2007.

[4] 罗时飞.精通 SPRING2.电子工业出版社[M].2006年12月.

[5] 朱少民.软件测试方法和技术[M].清华大学出版社,2005.

[6] 崔群法.Struts2.0从入门到精通[M].电子工业出版社,2011.

[7] 薛元君.页面数据库设计与发布[M].清华大学出版社,2003.

猜你喜欢

科研人员数据库模块
科技部等五部门联合发文开展减轻青年科研人员负担专项行动
28通道收发处理模块设计
科研人员揭示油桃果实表皮不长毛的奥秘
“选修3—3”模块的复习备考
科研人员破译黑猪肉特征风味物质
广东公安科研人员风采
数据库
数据库
数据库
数据库