免费论文查重: 大雅 万方 维普 turnitin paperpass

简析管理系统高校科研管理系统与设计站

最后更新时间:2024-01-14 作者:用户投稿原创标记本站原创 点赞:11702 浏览:46569
论文导读:求,而现有的高校科研管理系统大多采用传统的J2EE框架,但这种架构显得有些臃肿,存在并发访问量大、安全性以及稳定性需求高,维护成本高等弊端。基于此,在高校科研管理系统需求分析的基础上,提出了使用SSH(Struts+Spring+Hibernate)框架进行高校科研管理系统的设计方法,实现了科研处网站管理,系统管理,科研经费管理,科研项
摘要:在对高校科研管理系统需求进行分析的基础上,利用SSH(Struts + Spring + Hibernate)对系统进行建模,前端采用Struts的MVC框架,后台采用Hibernate,中间层采用Spring,实现了科研项目,科研成果,学术活动,科研经费等流程的管理。开发实践表明,SSH架构可以简化系统开发流程,降低了系统的耦合度,提高了系统的健壮性。
关键词:科研管理系统;SSH架构;Struts;Spring;Hibernate
1009-3044(2012)27-6642-03
Analysis & on Design College Scientific Research Management System
HU Jin-Cheng,LIU Ya-bin, CHEN Lin
(Information Management Center, Shanghai Finance University, Shanghai 201209, China)
Abstract: On the basis of analyzing the demand for college scientific research management system, This paper uses SSH (Struts+ Spring + Hibernate) modeling system, it achieves the research projects, scientific research , academic activities and research funding process management through using Struts MVC framework in the front-end, Hibernate in the background and Spring in the middle layer .Development practices show that the SSH architecture can simplify the system development process and re? duce the degree of coupling, which improves the robustness of the system.
Key words: scientific research management system; SSH architecture; Struts; Spring; Hibernate
随着高校综合实力指标——科研活动与科研能力的不断发展壮大,高校科研处的工作量不断加重,而传统的手段,即通过office办公软件或简单的数据库操作处理已经无法满足学校科研中的业务繁杂、信息量大、统计复杂等需求,而现有的高校科研管理系统大多采用传统的J2EE框架,但这种架构显得有些臃肿,存在并发访问量大、安全性以及稳定性需求高,维护成本高等弊端。基于此,在高校科研管理系统需求分析的基础上,提出了使用SSH(Struts + Spring + Hibernate)框架进行高校科研管理系统的设计方法,实现了科研处网站管理,系统管理,科研经费管理,科研项目管理,成果获奖管理,科研人员管理,科研成果管理,科研机构管理,学术活动管理,科研考核管理等功能。开发实践表明,SSH架构可以简化系统开发流程,降低了系统的耦合度,提高了系统的健壮性,具有广阔的应用前景。
1科研管理系统需求与设计
如图1所示,科研管理系统包含科研处网站管理,科研机构子系统,科研项目子系统,科研人员子系统,科研经费子系统,科研项目子系统,科研成果子系统,成果获奖子系统,学术活动子系统,科研考核子系统,系统管理子系统等系统。
2科研管理系统架构设计
为了进一步实现科研管理的信息化工作,减轻工作人员的负担,系统采用基于SSH架构开发科研管理系统,前端采用Struts的MVC框架,后台采用Hibernate,中间层采用Spring,使MVC软件设计模式中M模型层、V展现层、C控制层的分离,降低了系统的耦合度,系统架构图如图2所示。

2.1展现层设计

在展现层,借助Struts框架来实现MVC模型中的视图和控制的部分,视图用JSP页面设计,该层不存在业务逻辑处理代码,它只是用户与系统进行沟通的界面,主要负责接受Web浏览器请求和收集客户端信息,然后通过控制器查找对应的请求,并将把相应的请求转发到对应的Action,再在Action中调用业务逻辑处理程序,进行业务逻辑的处理,然后使用request.setAttribute方法将相应的结果返回给用户;在Struts提供的Taglib标签库功能很强大,通过标签可以减少脚本的使用,大大加速视图层的开发;为了实现代码的复用,系统采用FreeMarker技术来实现视图,使用专门的页面中保存可复用的标签库,然后通过include语句将其包含进来,Struts的控制器组件主要包括控制器和业务逻辑控制器,其中控制器负责拦截用户的请求,对用户请求的数据模型进行封装,然后转发给用户请求的Action当中。

2.2业务逻辑层设计

业务逻辑层用Spring框架来实现,其是整个系统的核心,主要是各个应用模块的业务处理类,实现具体业务的业务规则,具体结构根据实际应用系统分为机构管理、人员管理、项目管理、成果管理、学术活动、科研考核、年度统计、系统维护等几个基本模块;Spring是业务逻辑层的容器,位于展现层和持久层之间,将展现层与持久层紧密地黏合起来,Spring框架使用IOC(Inversion of Contr源于:论文致谢怎么写www.7ctime.com
ol反转控制)来建立程序之间的依赖关系,Spring的其他功能都构建在IoC之上,IoC容器可以通过无参构造方法、静态工厂方法或非静态工厂方法实例化Bean,然后通过set论文导读:行身份验证,待确认身份后方可允许他们进入操作界面,在操作过程中,其身份以session形式隐藏,session部分存储着class类,而非一般的字符串类型数据。2)为防止恶意攻击,系统界面上提供了输入验证码功能,验证码技术是现在比较行的有效的登录系统安全验证机制,系统在服务器上随机生成4位数字,并用这个4位数字由JA程序动
ter方法或构造方法将业务逻辑的各个模块实现依赖注入到实际调用业务逻辑的动作模块当中去,使用InitializingBean和DisposableBean两个接口,当利用Spring进行事务处理,可以通过ApplicationContext接口中的getBean方法,可以获得IoC容器中的bean对象。

2.3数据持久层设计

科研管理系统不断访问数据库,主要包括:读取、添加、修改和删除,系统用Hibernate的对象化映射和数据库进行交互,Hiber nate API封装了数据库访问的细节,常用的API包括:配置hibernate接口(configuratioin),回调接口(Interceptor,Lifecycle,Validatable),访问数据库操作(session,transaction,query),用于扩展的功能接口(UserType,CompositeUserType,IdentifierGenerator)等,使用Hiber nate工具实现数据持久层,将对象数据保存到数据库和将数据库数据读入对象中,HibernateDaoSupport是Spring提供的集成Hiber nate的基类,所有的DAO,均需要继承它,使用Configuration cfg = new Configuration().configure()配置hibernate接口,使用buildSession Factory创建SessionFactory(保存了当前的数据库配置信息和所有映射关系以及预定义的SQL语句),使用openSession创建Session(持久化管理器),利用SchemaExport工具类创建数据库表。

2.4三大框架间的整合

三大框架间的整合是利用Struts架构作为系统的整体基础架构,负责MVC的分离,利用Hibernate架构来提供持久层支持,业务层则使用Spring来支持。要使用Spring整合Struts2框架,实质就是将Struts2的Action实例交给Spring框架的IoC容器进行装配和管理,需要导入Spring和Struts框架必要的类库和一些特定类库,还需要在web.xml中配置一个FilterDispatcher和listener,然后通过context-param指定特定的配置文件;Spring整合Hibernate需要导入Spring核心包,同时导入Spring整合Hibernate的包,选择Hiber nate属性文件策略,指定SessionFactory实例的id值,配置SessionFactory需要的DataSource,使用Hibernate逆向工程,生成Customer. hbm.xml文件,创建新类CustomerDAOHibernateTemplateImpl,实现CustomerDAO接口,最后在applicationContext.xml中配置bean并装配bean。
3系统中使用的关键技术

3.1 Ajax技术

Ajax是多种技术的综合应用,主要包括XML Http Request对象,DOM技术,XML技术和JaScript技术等,系统利用ExtJS(使用JaScript写的Ajax框架)封装的Ext.Ajax.request方法来实现前台页面对后台服务器的请求。
Ajax技术实现了客户端与服务器端的异步通信,采用此技术后,在一定程度上提高了系统响应速度,减轻了服务器端压力,在开发中,前台页面jsp动态生成的html代码产生,提交给服务器的操作交给jascript脚本去处理,jascript负责接受后台页面处理的结果;后台页面由jsp等动态语言实现,传递参数的方法和传统的jsp页面一样,后台页面结果只要通过out.println(xxx)打印出来就可以,但需要注意注意:打印出来的代码尽量改进,绝对不可以包含jascript代码,因为打印出来的js代码会被前台的jascript接收,这样很容易产生语法冲突。系统中,使用Ajax实现几项内容:
1)输入提示,例如实现google那样的效果,可以把历史数据实时获得;
2)实源于:大学生毕业论文www.7ctime.com
时联动下拉框:实现实时更新;
3)数据验证:例如在验证用户名的时候既要验证输入的合法性,又要验证是否在数据库中存在,那么可以使用ajax实现,实时去数据库中验证,而不需要在提交给另外一个页面去处理。

3.2系统安全

1)用户登录系统时需要提供用户名和(隐藏显示),以进行身份验证,待确认身份后方可允许他们进入操作界面,在操作过程中,其身份以session形式隐藏,session部分存储着class类,而非一般的字符串类型数据。
2)为防止恶意攻击,系统界面上提供了输入验证码功能,验证码技术是现在比较行的有效的登录系统安全验证机制,系统在服务器上随机生成4位数字,并用这个4位数字由JA程序动态生成一个图形格式的数字图片,传到客户端登录界面上,用户只能通过肉眼才能辨别出图形数字的具体数值,然后在验证码输入框中输入该验证码,提交服务器进行身份验证前,系统首先核对生成的验证码是否正确,如果不正确,则不提交用户登录操作,同时生成新的验证码图片并提示用户输入新的验证码。
3)用户对系统的操作权限可由系统管理员通过权限管理模块进行分配设置,用户在登录系统以后,访问的功能模块也由系统来验证其访问权限,以确保系统的安全性。
4)为了提高数据安全性,关键数据、用户采用SSL加密方式传输,但非关键数据不进行SSL加密处理,采用加密算法加密保存在数据库中,不以明文方式存储。
5)将数据库服务器和Internet分离,只有Web服务器能访问,数据库放在局域网内防火墙后面,其他用户不能通过互联网直接访问数据库服务器。
4结束语
SSH是J2EE未来发展的趋势, SSH架构能够极大地规避传统的J2EE框架带来的风险, SSH(St论文导读:3):172,181.王瑜.基于网络的高校科研信息化管理.科研管理,2007(2):34,36.孙杰.基于UML教学管理信息系统的研究与实现.青岛大学学报:工程技术版,2004(2):56,59.上一页123
ruts+ Spring+ Hibernate)框架搭建的应用系统,视图、业务逻辑、控制、持久化,各层次分明,Struts、Spring、Hibernate分别担当不同的角色,职责清晰,降低了模块间的耦合性,进一步提高了系统的健壮性,采用SSH架构设计了科研管理系统,对高校的科研业务进行全面管理,实践证明,可以有效的规范科研工作流程、提升高校的科研管理水平,提高了科研处工作效率。
参考文献:
Ian Sommerville.Software Engineering Eighth Edition,Boston: Addison Wesley,2007.
刁成嘉.UML系统建模与分析设计[M].北京:机械工业出版社,2007:60-61.
[3] Snyder L.Formal models of capability-based protection systems[J].IEEE Transactions on Computers,1981,30(3):172,181.
[4]王瑜.基于网络的高校科研信息化管理[J].科研管理,2007(2):34,36.
[5]孙杰.基于UML教学管理信息系统的研究与实现[J].青岛大学学报:工程技术版,2004(2):56,59.