高校毕业生就业信息管理系统设计与开发论文.docx
《高校毕业生就业信息管理系统设计与开发论文.docx》由会员分享,可在线阅读,更多相关《高校毕业生就业信息管理系统设计与开发论文.docx(35页珍藏版)》请在冰豆网上搜索。
高校毕业生就业信息管理系统设计与开发论文
沈阳工业大学
本科毕业论文
题目:
高校毕业生就业管理
系统设计与开发
院系:
计算机科学与技术学院
专业:
计算机科学与技术
班级:
软件0501班
学生姓名:
周宁
指导教师:
贾军
论文提交日期:
2008年6月15日
论文答辩日期:
2008年6月日
内容摘要
高校毕业生数量急剧增加,有关高校毕业生的各种信息量也成倍增长,高校毕业生信息的管理工作量与工作难度亦在增长。
面对庞大的信息量,就需要高校毕业生信息管理系统来提高高校毕业生管理工作的效率与质量。
由于计算机和网络的普及,建立一个B/S结构的高校毕业生信息管理系统,高校毕业生便可以通过网络来选课并且查询自己的有关信息,使得高校毕业生信息管理工作系统化,进而提高了学校管理高校毕业生的效率。
通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询等,从而减少管理方面的工作量。
高校毕业生信息管理系统是针对学校学生处、教务处等管理部门对毕业生大量业务处理工作而开发的管理软件,是典型的管理信息系统。
它是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,它能够为用户提供充足的信息和快捷的查询手段。
能有效的帮助学校和老师掌握高校毕业生的情况,为高校毕业生提供成绩跟课程方面的查询。
作为计算机应用的一部分,使用计算机对高校毕业生信息进行管理,具有手工管理所无法比拟的优点。
例如:
检索迅速、查找方便、易修改、可靠性高、存储量大、数据处理快捷、保密性好、寿命长、成本低、便于打印等。
这些优点能够极大地提高高校毕业生信息管理的效率,也是学校的科学化、正规化管理,与世界接轨的重要条件。
高校毕业生信息管理系统还可以通过功能强大的Internet网及时的向招聘企业传递该毕业生相关信息,有助于学校、学生与企业信息互动,为更好地把握学校的教育方针起到了一定的促进作用。
该高校毕业生信息管理系统在技术上采用Struts+Hibernate技术开发,通过MyEclipse_6.0.1开发工具整合进行开发。
其中,ApacheStruts2是一个优雅的,可扩展的JAVAEEweb框架,对象为每一个请求产生一个实例,进而解决线程安全等问题。
Hibernate则是一个开放源代码的对象关系映射框架,对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
另外,我们将Hibernate的复杂管理交给Spring管理,解决系统应用开发的复杂性,使用基本的JavaBean来完成以前只可能由EJB完成的事情。
本论文论述的是一个简化的B/S结构的JavaWeb应用程序模型,在注重业务逻辑的设计的同时,结合实际对SSH新兴技术应用进行整合,充分发挥各项技术的优势,力求设计与开发业务逻辑清晰应用技术强势的信息管理系统。
关键词:
信息管理系统;Struts;Spring;Hibernate;MyEclipse
Abstract
E-commerceisafocusofcurrentITtrade,andtheonlineshopisundoubtedlyanimportantcomponentofe-commerce,itisoneofthebasictechnologyofe-commercetoo.Theonlineshop
Keywords:
InformationManagementSystem;Struts;Spring;Hibernate;MyEclipse
目 录
高校毕业生信息管理系统设计与开发
一.绪论
一.1课题来源与背景
IT技术的发展使信息的处理和传输也进入了一个崭新的阶段,人类进入了信息高速发展的时代,信息技术成为一门新的产业。
教育信息化理念的出台,使信息管理系统已开始设计并应用于教学管理中。
高校毕业生数量急剧增加,有关高校毕业生的各种信息量也成倍增长,高校毕业生信息的管理工作量与工作难度亦在增长。
使用计算机对高校毕业生信息进行管理,具有手工管理所无法比拟的优点。
例如:
检索迅速、查找方便、易修改、可靠性高、存储量大、数据处理快捷、保密性好、寿命长、成本低、便于打印等。
这些优点能够极大地提高高校毕业生信息管理的效率,也是学校的科学化、正规化管理,与世界接轨的重要条件。
高校毕业生信息管理系统还可以通过功能强大的Internet网及时的向招聘企业传递该毕业生相关信息,有助于学校、学生与企业信息互动,为更好地把握学校的教育方针起到了一定的促进作用。
在传统模式下简单利用计算机进行高校毕业生信息管理,存在着较多的缺点,如:
效率底,保密性差,时间一长将产生大量的文件和数据,更不便于查找,更新,维护等。
诸如这些情况,令学校管理者对高校毕业生的信息管理带来了很大困难,严重影响了教育工作者的工作效率。
随着科学技术的不断提高,计算机科学日渐成熟,使用日趋成熟的计算机技术来代替传统的人工模式,来实现高校毕业生信息的现代化管理,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
高校毕业生信息管理系统则是针对学校学生处、教务处等管理部门对毕业生大量业务处理工作而开发的管理软件,是典型的管理信息系统。
它是一个教育单位不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,它能够为用户提供充足的信息和快捷的查询手段。
能有效的帮助学校和老师掌握高校毕业生的情况,为高校毕业生提供成绩、就业信息等方面的查询。
建立一个B/S结构的高校毕业生信息管理系统,在技术采用上又是多种选择,现在比较通用的JSP的MVC模式开发受到广泛的欢迎,随着Struts、Hibernate、Spring等技术框架的出现,如何结合实际应用这些技术框架套设计开发高校毕业生信息管理系统同样是待研究的课题。
一.2课题研究中要解决的问题
面对庞大的信息量与工作流程等工作需求,合理设计信息管理系统的业务逻辑是实现高校毕业生信息管理系统首先要解决的问题。
现阶段的高校管理是一项较为复杂与繁琐的工作,已不再仅仅是成绩管理,而且涉及到多用户个人基本信息的管理与维护,同时还存在就业信息的发布与留言管理。
通过对高校毕业生信息管理的调研熟悉高校毕业生信息管理的工作流程,完成较为完善的需求分析,才能进一步在技术上设计与开发,才能做到信息的规范管理、科学统计和快速的查询等工作,从而真正减少管理方面的工作量。
另外,在技术应用上,该高校毕业生信息管理系统在技术上采用SSH框架开发,即采用Struts+Spring+Hibernate技术开发,通过MyEclipse_6.0.1开发工具整合进行开发。
在数据库方面,我们应用Hibernate技术,对数据库的要求相对不再过于严格,主要是对信息存储量的考虑,结合开发实际,我们采用MySQL数据库。
其它技术框架方面,ApacheStruts2是一个优雅的,可扩展的JAVAEEweb框架,对象为每一个请求产生一个实例,进而解决线程安全等问题。
Hibernate则是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
另外,我们将Hibernate的复杂管理交给Spring管理,解决系统应用开发的复杂性,使用基本的JavaBean来完成以前只可能由EJB完成的事情。
如何实际应用这些技术,使其更加合理的整合,同样是有待解决的问题。
一.3论文的写作结构
论文首先介绍信息管理系统的发展与高校信息管理的现状,以及当今技术的应用情况。
然后论文讨论高校信息管理系统的前台系统、后台系统的功能,及前台基本用户操作流程和后台管理员操作流程。
在前面两个部分的基础上,论文对高校毕业生信息管理系统进行了详细的系统分析和设计,包括系统需求分析、运行环境分析、系统功能设计及模块划分、系统数据库设计等。
其中,系统工作流程采用了流程图介绍,后台设计给出了各模块的核心代码,数据库设计列出了相关表的设计及Hibernate应用,前台设计做了相关截图展示。
二.文献综述
二.1国内外相关工作的发展
管理信息系统通过对企业当前运行的数据进行处理来获得有关信息,以控制企业的行为;利用过去和现在的数据及相应的模型,对未来的发展进行预测;能从全局目标出发,对企业的管理决策活动予以辅助。
从工业发达国家来看,管理信息系统的发展经历了以下几个阶段:
第一阶段:
(1953年至1965年)单项数据处理阶段,也称电子数据处理(EDP)阶段。
这是电子计算机在管理领域应用的起步阶段。
这一阶段,由于当时计算机硬、软件的限制,数据处理的性质只是使用计算机代替人的手工劳动,进行简单的单项数据处理工作,如计算工资、数据统计、报表登记、编制计划等。
这个阶段的处理方式主要是集中式的批处理。
第二阶段:
(1965年至1970年)综合数据处理阶段,也称事务处理系统(TPS)阶段。
这个阶段计算机硬、软件有了很大的发展,出现了多用户的分时系统,计算机开始应用于对某一个管理子系统的控制,并具有一定的反馈功能。
如库存管理系统、生产调度系统、物资管理系统等。
这个阶段的处理方式已发展为面向终端的联机实时处理。
第三阶段:
(1970年至今)管理信息系统(MIS)阶段。
这个阶段是在企业中全面的使用计算机把各种管理子系统的功能集中起来,构成了计算机化的全方位的信息系统,即现代管理信息系统。
这个阶段的处理方式是在数据库和网络基础上组成分布式处理系统。
它的特点是使用数据库和分时处理的计算机网络,并充分利用运筹学等数学方法,实现了硬件、软件和数据资源的共享从总的发展趋势来看,多媒体技术正向二个方而发展:
一是网络化发展趋势,与宽带网络通信等技术相互结合,使多媒体技术进入科研设计、企业管理、办公自动化、远程教育、远程医疗、检索咨询,文化娱乐、自动测控等领域;二是多媒体终端的部件化、智能化和嵌入化,提高计算机系统本身的多媒体性能,开发智能化家电。
计算机在管理中的应用开始于1954年,当时美国首先用计算机处理工资单。
40多年来,计算机在处理管理信息方面发展迅速。
例如,60年代美国计算机在管理中应用项目不到300项,到了1975年达到2670项。
而现在,美国在财务会计上90%的工作由计算机完成;物资管理中80—100%的信息处理由计算机完成;计划管理中是80—90%。
据计算机应用方面发展较快的国家统计,计算机用于经济管理的约占80%;用于科技运算的占8%;用于生产过程控制的占12%。
我国在全国范围内推广计算机在管理中的应用,是在70年代末开始的,虽然起步较晚,近几年发展却较快,特别是微型计算机的出现和普及为信息处理提供了物美价廉的手段,对于推动我国管理信息处理的现代化起了重要的作用。
传统纸媒介管理的高校毕业生信息难于共享汇总,其统计数据正确性也难以考证。
存在着较多的缺点,如:
效率底,保密性差,时间一长将产生大量的文件和数据,更不便于查找,更新,维护等。
随着计算机在全国普及,管理媒介有了质的飞跃,信息管理也进入了一个崭新的阶段。
二.2高校毕业生信息管理系统设计与开发的主攻方向
本次设计和开发的高校毕业生信息管理系统应符合学校高校毕业生信息管理的规定,满足对学校高校毕业生信息管理的需要,并达到操作过程中的直观,方便,实用,安全等要求。
系统采用模块化程序设计的方法,既便于系统功能的组合和修改,又便于未参与系统开发的技术维护人员补充和维护。
SIMS通过教育网络或互联网把整个学校的高校毕业生信息汇聚起来,为学校教育主管部门提供全面及时的高校毕业生信息,方便管理,同时亦可通过校园网扩展各类信息化应用,共享高校毕业生信息。
该高校毕业生信息管理系统同时是一个简化的B/S结构的JavaWeb应用程序模型,在注重业务逻辑的设计的同时,结合实际对SSH新兴技术应用进行整合,充分发挥各项技术的优势,力求设计与开发业务逻辑清晰应用技术强势的信息管理系统。
三.方案设计与论证
三.1工作基础及路线
目前计算机信息管理广泛应用且实用的系统建设三原则:
整体性原则、分作—协调原则、目标优化原则。
在系统开发的初期,尽快构造出系统的原型,使用户能及早地运行这个系统原型,通过使用它、熟悉它,受到启发并取得经验,然后对系统的目标和功能提出更精确、具体的要求,研制人员据此逐渐修改和完善原型,使它满足用户的需求,最后完成系统的开发。
该方法大大提高了系统开发效率,弥补了结构化生命周期法开发时间长的缺陷。
通常采用原型法需以下四个阶段:
1).明确用户的基本要求,
2).研制系统的原型,
3).使用、评价系统原型,
4).修改和完善原型。
系统设计阶段的主要目的是将系统分析阶段所提出的反映了用户信息需求的系统逻辑方案转换成可以实施的基于计算机与通信系统的物理(技术)方案。
包括总体结构设计、总体功能设计、总体物理结构设计、系统详细设计、数据库设计(概念结构设计、逻辑结构设计、物理结构设计)、代码设计、输入输出设计等。
三.2系统设计开发可行性分析
三.2.1操作可行性
大学毕业阶段的学生工作,使个人对毕业生信息管理的业务逻辑有了深一层的了解。
现阶段的高校管理是一项较为复杂与繁琐的工作,已不再仅仅是成绩管理,而且涉及到个人基本就业信息的管理,同时还存在就业信息的发布与留言管理。
通过对高校毕业生信息管理的调研,清楚信息量是的大小与业务逻辑在各模块中复杂度,熟悉高校毕业生信息管理的工作流程,容易完成较为完善的需求分析,进一步在技术上设计与开发。
懂得如何做到信息的规范管理、科学统计和快速的查询,真正减少管理方面的工作量,提高工作效率。
三.2.2技术可行性
在技术框架应用方面,大学计算机技术的学习与培训对当今常用的JAVA开发技术有了一定的掌握与实践。
JDK(JavaDevelopmentKit)是一切java应用程序的基础,所有的java应用程序是构建在这个之上的,是一个写Java的applet和应用程序的程序开发环境。
它由一个处于操作系统层之上的运行环境还有开发者编译,调试和运行用Java语言写的applet和应用程序所需的工具组成。
该高校毕业生信息管理系统在技术上采用SSH框架开发,即采用Struts+Spring+Hibernate技术开发,通过MyEclipse_6.0.1开发工具整合进行JAVA开发。
在数据库方面,我们应用Hibernate技术,相对对数据库的要求不再过于严格,主要是对信息存储量的考虑,结合开发实际,我们采用MySQL数据库。
MySQL是一个多用户、多线程数据库服务器。
MySQL是以一个客户机/服务器结构的实现,它由一个服务器守护程序Mysql和很多不同的客户程序和库组成。
其它技术框架方面,ApacheStruts2是一个优雅的,可扩展的JAVAEEweb框架,对象为每一个请求产生一个实例,进而解决线程安全等问题。
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
对相应技术的掌握与实践能容易对这些技术更加合理的整合,应用实际的高校毕业生信息管理系统。
三.2.3经济可行性
由于本系统的运行环境和开发环境都是使用的免费的开源工具故没有成本的存在。
整体工作为较为简易的高校信息管理系统JavaWeb模型,参与工作量较少,开发时间短,费用较低,经济可行。
三.3系统设计开发中的关键技术问题
三.3.1Struts2
ApacheStruts2是一个优雅的,可扩展的JAVAEEweb框架。
框架设计的目标贯穿整个开发周期,从开发到发布,包括维护的整个过程ApacheStruts2即是之前大家所熟知的WebWork2。
在经历了几年的各自发展后,WebWork和Struts社区决定合二为一,也即是Struts2
Struts2Action类可以实现一个Action接口,也可实现其他接口,使可选和定制的服务成为可能。
Struts2提供一个ActionSupport基类去实现常用的接口。
Action接口不是必须的,任何有execute标识的POJO对象都可以用作Struts2的Action对象。
Struts2Action对象为每一个请求产生一个实例,因此没有线程安全问题。
(实际上,servlet容器给每个请求产生许多可丢弃的对象,并且不会导致性能和垃圾回收问题)
Struts2Action不依赖于容器,允许Action脱离容器单独被测试。
如果需要,Struts2Action仍然可以访问初始的request和response。
但是,其他的元素减少或者消除了直接访问HttpServetRequest和HttpServletResponse的必要性。
Struts2Action可以通过初始化、设置属性、调用方法来测试,“依赖注入”支持也使测试更容易。
Struts2直接使用Action属性作为输入属性,消除了对第二个输入对象的需求。
输入属性可能是有自己(子)属性的rich对象类型。
Action属性能够通过web页面上的taglibs访问。
Struts2也支持ActionForm模式。
rich对象类型,包括业务对象,能够用作输入/输出对象。
这种ModelDriven特性简化了taglib对POJO输入对象的引用。
Struts2可以使用JSTL,但是也支持一个更强大和灵活的表达式语言--"ObjectGraphNotationLanguage"(OGNL).
Struts2使用"ValueStack"技术,使taglib能够访问值而不需要把你的页面(view)和对象绑定起来。
ValueStack策略允许通过一系列名称相同但类型不同的属性重用页面(view)。
三.3.2Hibernate
图3-1Hibernate对象关系映射框架
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
Hibernate的核心接口一共有5个,分别为:
Session、SessionFactory、Transaction、Query和Configuration。
这5个核心接口在任何开发中都会用到。
通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。
下面对这五的核心接口分别加以介绍。
Session接口:
Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。
)。
但需要注意的是Session对象是非线程安全的。
同时,Hibernate的session不同于JSP应用中的HttpSession。
这里当使用session这个术语时,其实指的是Hibernate中的session,而以后会将HttpSesion对象称为用户session。
SessionFactory接口:
SessionFactroy接口负责初始化Hibernate。
它充当数据存储源的代理,并负责创建Session对象。
这里用到了工厂模式。
需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。
Configuration接口:
Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。
在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象。
Transaction接口:
Transaction接口负责事务相关的操作。
它是可选的,可发人员也可以设计编写自己的底层事务处理代码。
Query和Criteria接口:
Query和Criteria接口负责执行各种数据库查询。
它可以使用HQL语言或SQL语句两种表达方式。
三.3.3Spring
Spring是一个开源框架,它由RodJohnson创建。
它是为了解决企业应用开发的复杂性而创建的。
Spring使用基本的JavaBean来完成以前只可能由EJB完成的事情。
然而,Spring的用途不仅限于服务器端的开发。
从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。
Spring主要目地是解决企业应用开发的复杂性,使用基本的JavaBean代替EJB,并提供了更多的企业应用功能,可以应用于任何Java的应用,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。
其主要优点如下:
■轻量——从大小与开销两方面而言Spring都是轻量的。
完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布。
并且Spring所需的处理开销也是微不足道的。
此外,Spring是非侵入式的:
典型地,Spring应用中的对象不依赖于Spring的特定类。
■控制反转——Spring通过一种称作控制反转(IoC)的技术促进了松耦合。
当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。
你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。
■面向切面——Spring提供了面向切面编程的丰富支持,允许通过分离应用的业务逻辑与系统级服务(例如审计(auditing)和事务()管理)进行内聚性的开发。
应用对象只实现它们应该做的——完成业务逻辑——仅此而已。
它们并不负责(甚至是意识)其它的系统级关注点,例如日志或事务支持。
■容器——Spring包含并管理应用对象的配置和生命周期,在这个意义上它是一种容器,你可以配置你的每个bean如何被创建——基于一个可配置原型(prototype),你的bean可以创建一个单独的实例或者每次需要时都生成一个新的实例——以及它们是如何相互关联的。
然而,Spring不应该被混同于传统的重量级的EJB容器,它们经常是庞大与笨重的,难以使用。
■框架——Spring可以将简单的组件配置、组合成为复杂的应用。
在Spring中,应用对象被声明式地组合,典型地是在一个XML文件里。
Spring也提供了很多基础功能(事务管理、持久化框架集成等等),将应用逻辑的开发留给了你。
所有Spring的这些特征使你能够编写更干净、更可管理、并且更易于测试的代码。
它们也为Spring中的