基于javaweb个人简历生成与管理系统

获取项目源文件,技术交流与指导联系Q:1225467431

   

 

随着经济全球化深入发展,国际经济环境中不稳定,不确定因素增多,受世界经济金融危机影响,已有一批中小企业关停倒闭,就业岗位大量流失,用工需求急剧下降,并且这种不利影响正逐步扩大,出现由沿海地区向中西部地区,由外向型生产企业向内向型各类企业,由劳动密集中小企业向规模以上大中型企业,由农民工向城镇劳动力特别是高校毕业生蔓延的趋势。就业形势需要集中解决的突出难点集中在毕业生就业难和城镇困难群体的就业问题上。

找工作,竞争是什么?最开始竞争的是简历!一份好的简历,可以在众多求职简历中脱颖而出,给招聘人员留下深刻的印象,然后决定给你面试通知,它是帮助你应聘成功的敲门砖,因此一份良好的个人简历对于获得面试机会至关重要。

本课题围绕个人简历生成与管理系统,旨在于为广大求职人员提供良好的简历,鉴于以上情况,该课题的研究、开发具有重要的理论和实践意义。

关键字:个人简历    生成与管理

Abstract

With the in-depth development of economic globalization, instability in the international economic environment, increasing uncertainties, affected by the world economic and financial crisis, a group of small and medium enterprises shut down the collapse, a huge loss of jobs, a sharp decline in the demand for labor, and this negativethe impact is being gradually expanded by the export-oriented manufacturing enterprises from the coastal areas to central and western regions, to the inward-looking enterprises of all types, from labor-intensive small and medium enterprises to large and medium-sized enterprises above designated size, by migrant workers to the urban workforce in particular the spread of college graduatestrend. The employment situation needs to concentrate on resolving prominent and difficult to focus on the employment problem of graduates' employment and urban disadvantaged groups.

Looking for work, is the competition? The competition resumes! A good resume, stand out in a number of resume, left a deep impression to the recruiter, and then decided to give you an interview, it is a stepping stone to help you to apply for success, so a good personal resume for getting an interview. is essential.

This project around in Personal resume generation and management system, designed to provide a good resume for the majority of job seekers, the light of the above, the subject of the research, development has important theoretical and practical significance.

Key wordspersonal resume, generation and management

   

 

1     1

1.1 课题来源与意义1

1.2 国内外现状及其发展趋势1

1.3 研究目标2

1.4 主要研究内容2

1.4.1 普通用户信息模块 2

1.4.2 会员用户信息模块 2

1.4.3 管理员管理模块 2

1.4.4 简历生成模块 2

1.4.5 更炫简历查看模块 3

2 系统的可行性论证及需求分析4

2.1 系统的可行性研究4

2.2 功能分析4

2.3 系统开发环境4

2.3.1硬件平台: 4

2.3.2软件平台: 4

3 系统采用技术及其架构6

3.1 系统采用技术6

3.1.1 JSP介绍 6

3.1.2 Servlet介绍 6

3.1.3 MYSQL介绍 7

3.2 MVC框架8

3.2.1 MVC框架简介 8

3.2.2 MVC框架组成 8

3.2.3 使用MVC框架的原因 9

4 总体设计11

4.1 系统主要功能设计11

4.1.1 用户信息管理 12

4.1.2 简历信息管理 13

4.1.3 申请会员模块 14

4.1.4 会员信息管理模块与会员的简历信息管理模块 15

4.1.5 更炫简历功能 15

4.1.6 管理员信息管理 15

4.1.7 管理员管理信息模块 15

4.2 系统的三层架构设计思想16

5 数据库设计17

5.1 关系数据库的基本概念17

5.2 系统E-R17

5.3 数据库概念结构设计17

5.3.1 局部E-R 17

5.3.2 全局E-R 20

5.4数据库的逻辑结构设计21

6 详细设计及其实现26

6.1 网站首页26

6.2 普通用户模块26

6.2.1 用户登录功能的实现 26

6.2.2注册功能的实现 27

6.2.3找回密码功能的实现 27

6.2.4普通用户首页的实现 28

6.2.5选择模版页面的实现 28

6.2.5简历模版页面的实现 29

6.2.6删除简历页面的实现 29

6.2.7申请会员页面的实现 30

6.3会员用户模块30

6.3.1简历首页下载的实现 30

6.3.2英文简历页面的实现 31

6.3.3多页简历页面的实现 31

6.4管理员模块32

6.4.1管理员首页的实现 32

6.4.2管理信息界面的实现 32

7 系统测试33

7.1 黑盒测试33

7.2 白盒测试34

7.3 测试具体实施34

    35

    36

参考文献37

1 前    言 

1.1 课题来源与意义

简历是一个求职者获取工作机会的敲门砖,当今社会求职找工作的方式很多,但是简历适用于每一种、每一阶段的面试,当招聘官打开招聘邮箱的第一刻开始,映入他眼帘的就是简历,所以简历的好坏与否,直接影响到求职的成败。制作出优秀的求职简历是迈向成功的第一步。

找工作,是竞争什么?最开始的竞争就是简历!因为你到任何一个招聘单位要做的第一件事情就是要投递简历,而简历就是那些单位了解你的第一扇窗口。因此简历就成了你和单位沟通的第一通道,往往是招聘人员了解你的第一个途径,适度的引起用人单位对你的兴趣才是最重要的。一份好的简历,可以在众多求职简历中脱颖而出,给招聘人员留下深刻的印象,然后决定给你面试通知,它是帮助你应聘成功的敲门砖。

所以说:简历不是很多人认为的用来填写个人的“丰功伟绩”,或者仅仅是把工作经历,学习状况罗列一下。

如果现在是你在找一份合适的工作,并且没有“关系”能帮到你,那么你需要一份合适的简历,你需要认真对待简历,并将简历做好,这样才能敲开面试的大门,找到一份好的工作岗位。

该系统主要解决的就是很多人对简历重要性的无知,以及对简历内容格式的误解,为用户提供一个简单方便的简历生成与管理系统,方便所有为工作烦恼的人。以下是系统的概要。

1.2 国内外现状及其发展趋势 

随着中国高校教育的发展,大学生的数量急剧增加,大学生就业问题也日益凸显,大学生就业难问题已成为社会热点之一。据人力资源和社会保障部公布的数据,2009年我国将有2400万劳动力需要安排就业,其中将有超过700万大学毕业生需要解决就业问题。数据显示,2009年高校毕业生规模达到611万,比2008年增长52万;而据预测,2011年这一数字将达到峰值758万。与此同时,国际金融危机的影响进一步显现,可以预见,在未来相当长时期内大学生就业压力不会减弱。如何帮助大学生走出就业难的困境将成为政府与社会长期而艰巨的任务。

在美国,平均一个职位会有200人应聘,其中100份是合格的,在北京,平均一个职位会收到1000封求职信,其中200封是合格的。据某网站统计,规模较大的企业一般每周要接收500份至1000份电子简历,其中的80%在管理者浏览不到30秒种后就被删除了。要让别人在半分钟内通过一份E-mail对你产生兴趣,其难度与跟用人单位直接见面相比难得多,因此可以触目惊心地看出,一份简历对于一个求职者的重要意义。

对于在线求职网站还有简历模版和简历填写网站国内外也有不少。

在国内,在线求职系统已经有很多,主要有中华英才网、前程无忧网、智联招聘等等。不可否认,在线求职正在逐渐的扩大流行,但是依旧存在着优缺点。

其优点有很多,在线求职不受时间和空间的限制,求职者可以随时与供职方进行交流,并且足不出户就可以找到各种各样的招聘广告;通过互联网,供职方可以找到大量的求职者者,而一个求职者也可以在任何供职方投递简历,拥有更多的选择;在线求职是求职者与供职方的直接交流,省去了中介环节(如人才市场),节省了时间与开支;在线求职具有快速的流通性,省去了求职的中间环节,并且随着全球网络的发展,更进一步加快了信息的流通。

1.3 研究目标

项目总体目标是搭建一个个人简历生成系统,不仅可以填写和生成简历,还可以对简历有效的管理和保存,而且可以下载简历封面和英文简历。 

本课题最终将达到如下几个目标:功能齐全,可完成大多数用户的需求;界面简约,可面向大多数用户;便于维护,可进行功能扩展;部署简单,可以很方便的进行测试。

本网站系统主要从为使用者提供服务来考虑。本着与时俱进的方针,从符合操作简便、界面友好、灵活、实用、安全的要求出发,为客户提供满意的简历。

1.4 主要研究内容

通过前期的分析,本网站决定规划5个系统功能模块,普通用户信息模块,会员永华信息模块,管理员管理模块,简历生成与管理模块,更炫简历查看模块,具体如下:

1.4.1 普通用户信息模块

该模块包括用户的登录,用户申请,找回密码,用户信息等功能,在用户首页中可以填写简历,修改简历,删除简历,还可以申请成为会员。

1.4.2 会员用户信息模块

该模块包括会员用户登录,会员用户找回密码等会员信息的管理,在会员主页中除了可以像普通用户那样填写简历,修改简历,删除简历,还可以进入简历封面下载的页面下载封面,查看英文简历,查看多页简历等功能。

1.4.3 管理员管理模块

该模块主要是管理员对用户和会员的信息的管理,当管理员登录成功后可以进入管理员的首页,在其中可以对用户和会员的信息进行查看和删除。

1.4.4 简历生成模块

该模块是本网站系统最主要的功能模块,当用户点击添加简历按钮的时候会进入选择简历模版的页面,其中有3大模版供选择,选择一个模版即可开始编辑自己的简历了,当通过本网站的验证后,简历就被写入本网站的数据库,方便用户的修改和删除,其中本网还有一个特色系统就是可以把写好的简历生成pdf文档,方便用户的直接打印和使用。

1.4.5 更炫简历查看模块

该模块主要是会员专有的模块,当用户成为会员之后,可以享受更多的功能,例如本网站有大量的简历封面图片供大家下载,还搜集了各种外国优秀的英文简历供大家参考,如果有人喜欢多页简历,本网站也有这个模块。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 系统的可行性论证及需求分析

2.1 系统的可行性研究

可行性研究是为了弄清楚系统开发的项目是不是可以实现和值得进行研究的过程,实际上是一次大大简化系统分析和系统设计的过程,所以,进行可执行性的分析是非常必要的,经过最初的设计目标和进行的市场调查得出以下三点的可行性分析:

1)经济可行性:不需要大量设备,只需一台电脑以及相关软件便可进行开发。

2)技术可行性:J2EE技术已经推行广泛,JSP技术已相当成熟,开发效率高,使用稳定。

3)运行可行性:本系统的服务端运行是以jdk作为编译环境,tomcat作为web服务器,将系统包放到tomcat容器下连接到数据库就可运行。

通过以上的可行性分析, 本设计采用J2EE开发,使用JSP技术,以MySQL作为数据库实现。

2.2 功能分析 

简历网实现的相关功能及模块如下: 

1)用户与会员的注册。 

2)用户与会员的登录。

3)用户与会员找回密码 

4)用户选择简历模板功能。 

5)用户对自己简历的修改删除功能。 

6)用户选择模板后的生成简历。 

7)用户申请会员功能。

8)会员特权的下载简历首页功能。

9)会员特权的查看英文简历功能。

10)会员特权的查看多页简历的功能。

11)管理员的登陆。

12)管理员对用户和会员数据的管理功能。

2.3 系统开发环境 

2.3.1 硬件平台

1)CPU:Intel(R) Core(TM)2 Duo CPU P7350 2.00GHz;

2)内存:2.00GB。

2.3.2 软件平台

1)操作系统:Windows xp/ Windows 7。

2)数据库:Mysql 5.5。

3)浏览器:不推荐使用IE浏览器,请使用火狐浏览器,本系统测试选择的是360极速浏览器。

4)Web服务器:apache-TomCat-7.0

5)分辨率:最佳效果1366*768像素。

6)后台编译器:Eclipse

7)前台编译器:Dreamweaver

8)Java运行环境:JDK1.7

3 系统采用技术及其架构

3.1 系统采用技术

3.1.1 JSP介绍 

JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准,本文简单介绍JSP及其优点。

JSP技术是用JAVA语言作为脚本语言的,JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于HTTP的应用程序。在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 Email 等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plugin,无ActiveX,无Java Applet,甚至无Frame。

JSP的优点: 

(1) 对于用户界面的更新,其实就是由 Web Server进行的,所以给人的感觉更新很快。

(2) 所有的应用都是基于服务器的,所以它们可以时刻保持最新版本。 

(3) 客户端的接口不是很繁琐,对于各种应用易于部署、维护和修改。 

3.1.2  Servlet介绍 

(1) Servlet概述:

Servlet 是用 Java 编写的 Server 端程序,它与协议和平台无关。Servlet 运行于 Java - enabled Web Server 中。Java Servlet 可以动态地扩展 Server 的能力,并采用请求-响应模式提供 Web 服务。 

最早支持 Servlet 技术的是 JavaSoft 的 Java Web Server 。此后,一些其它的基于Java 的 Web Server 开始支持标准的 Servlet API 。Servlet 的主要功能在于交互式地浏览和修改数据,生成动态Web 内容。这个过程为:客户端发送请求至服务器端;服务器将请求信息发送至Servlet ;Servlet 生成响应内容并将其传给Server 。响应内容动态生成,通常取决于客户端的请求 ;服务器将响应返回给客户端;Servlet 看起来像是通常的 Java 程序。 Servlet 导入特定的属于Java Servlet API 的包。因为是对象字节码,可动态地从网络加载,可以说Servlet 对 Server 就如同 Applet 对 Client 一样,但是,由于Servlet 运行于 Server 中,它们并不需要一个图形用户界面。从这个角度讲,Servlet 也被称为 Faceless Object 。

(2) Servlet 的优势: 

Servlet 可以和其他资源 ( 文件、数据库、Applet Java 应用程序等 ) 交互,以生成返回给客户端的响应内容。如果需要,还可以保存请求-响应过程中的信息。采用 Servlet ,服务器可以完全授权对本地资源的访问 ( 如数据库 ) ,并且Servlet 自身将会控制外部用户的访问数量及访问性质。Servlet 可以是其它服务的客户端程序,例如,它们可以用于分布式的应用系统中,可以从本地硬盘,或者通过网络从远端硬盘激活Servlet 。Servlet 可被链接 (chain) 。一个Servlet 可以调用另一个或一系列 Servlet ,即成为它的客户端。采用 Servlet Tag 技术,可以在 HTML 页面中动态调用Servlet 。Servlet API 与协议无关。它并不对传递它的协议有任何假设。像所有的Java 程序一样, Servlet 拥有面向对象Java 语言的所有优势。Servlet 提供了 Java 应用程序的所有优势——可移植、稳健、易开发。使用Servlet 的 Tag 技术, Servlet 能够生成嵌于静态HTML 页面中的动态内容。一个 Servlet 被客户端发送的第一个请求激活,然后它将继续运行于后台,等待以后的请求。每个请求将生成一个新的线程,而不是一个完整的进程。多个客户能够在同一个进程中同时得到服务。一般来说, Servlet进程只是在Web Server卸载时被卸载。

(3) Servlet 生命周期: 

装载 Servlet。这项操作一般是动态执行的。然而,Server通常会提供一个管理的选项,用于在Server启动时强制装载和初始化特定的Servlet。Server创建一个Servlet的实例。Server调用 Servlet 的 init() 方法,一个客户端的请求到达 Server ,Server 创建一个请求对象,Server 创建一个响应对象。Server 激活 Servlet service()方法,传递请求和响应对象作为参数。service() 方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息。service()方法使用响应对象的方法,将响应传回Server,最终到达客户端。service()方法可能激活其它方法以处理请求,如doGet()或doPost()或程序员自己开发的新的方法。对于更多的客户端请求,Server创建新的请求和响应对象,仍然激活此Servlet的service()方法,将这两个对象作为参数传递给它。如此重复以上的循环,但无需再次调用 init() 方法。一般 Servlet 只初始化一次 , 当 Server 不再需要 Servlet 时 ( 一般当 Server关闭时) , Server调用Servlet的Destroy()方法。在美国, EJB+Servlet+JSP 几乎成为电子商务的开发标准。本来ASP也很有希望,但微软最近可能把精力都集中在打官司和Win2000上, 因此电子商务发展得太少。PHP由于其模式和一些天生缺陷,毫无希望。 在美国,很少有商业站点用PHP的。 

3.1.3 MYSQL介绍 

美国Microsoft公司推出的一种关系型数据库系统。MYSQL是一个可扩展的、高性能的、为分布式客户机/服务器计算所设计的数据库管理系统,实现了与Windows NT的有机结合,提供了基于事务的企业级信息管理系统方案。

MYSQL的特点:

(1) 上手容易 

(2) 兼容性良好 

(3) 电子商务 

(4) 数据仓库 

(5) 增强的在线商务 

(6) 利于构筑"敏捷性商务"

3.2 MVC框架

3.2.1 MVC框架简介 

Web应用程序的应用平台是整个网络,其最大优势是可以将任意多种资源和功能集成在一起。这种集成是通过Web组件的关联实现的。这些关联简单来说也是一种协作。

不同体系结构的Web应用程序可能需要不同的开发模式。MVC是一种软件设计模式。MVC最初是为SMALLTALK-80语言提出的,后来在JSP开发中渐渐得到广泛应用,并且成为Sun公司推荐的J2EE平台的设计模式。Sun公司提出的Model2开发模型就是基于MVC设计模式的应用。

MVC框架支持大多数现代图形用户界面。在Web应用程序开发中,MVC框架应用非常广泛,特别适合应用在大型的、比较复杂的项目开发中。

3.2.2 MVC框架组成 

MVC框架即是模型—视图—控制器(Model-View-Controller)设计模式。其中,M代表Model,V代表View,C代表Controller。MVC的核心思想是将一个应用程序的数据业务处理功能(模型)、表示功能(视图)和控制功能(控制层)在3个不同的部分(也叫层)上分别实现。MVC的目的是增加代码的复用性,减少数据描述和应用操作的可耦合度,并提高代码的可读性。同时,也可以使软件的可维护性,可扩展性、可修复性、灵活性以及封装性大大提高。MVC框架主要由以下3个部分组成。

(1) 视图:视图是应用程序的表示层,代表用户交互界面。在Web应用中,交互界面可能是HTML界面,也有可能是XML界面、Applet界面或其他界面。一个应用甚至可以对应多个视图。MVC对视图的操作包括对视图上数据的采集和处理,以及对用户的请求处理,但并不负责对视图上的业务流程的处理。

(2) 模型:模型是应用程序的业务处理层,负责所有业务流程的处理和业务规则的制定。模型处理由控制器转发来的视图的请求数据,并将最终的处理结果返回给视图。 

(3) 控制层:控制器的作用实际上就是一个分发器。负责决定将请求数据转发给什么样的模型组件,以及决定选择什么样的视图来显示模型返回的数据。同视图一样,控制器本身也不处理任何业务信息。

图3-1 MVC框架3个部分的关系

接下来结合图3-1来分析一下基于MVC的应用程序对某个用户请求时的处理过程,以此来说明MVC框架的3个部分之间的功能协作过程,具体如下: 

(1) 终端用户通过该应用程序发出了一个请求,该请求被转发给Controller(控制器)。

(2) 控制器收到该请求后,会检查该请求,然后决定使用什么业务逻辑来处理该请求,这时控制器会将请求转发给一个相应的业务组件去处理。

(3) 模型中包含处理该用户请求所有业务组件,并且也执行用户所需要的全部数据存取。代表终端用户查询检索出的任何数据都被打包返回给控制器。

(4) 控制器接收从模型返回的数据,并选择显示这些数据的相应的视图,并将视图返回给用户。

3.2.3 使用MVC框架的原因 

在早期使用JSP技术开发Web项目时,程序员通过在HTML中嵌入Java代码和一些标签,来实现动态网页。显然,这种开发方式的表示层和业务处理层是混杂在一起的。其优点是简单直观,易于搭建原型,但较适宜开发只有几个页面的小型项目。如果用这种方式来开发比较复杂的大项目,其缺陷将变得非常突出并难以忍受—随着嵌入JSP页面中Java代码的增多,跟踪维护这些代码将变得非常困难。同时,保持混杂有大量Java代码段的HTML的一致性也很困难。上述的这些困难,会使得程序极难维护,导致程序的应用扩展性、可重用性以及代码的可读性都很差。同时,这样的开发方式,需要开发人员既熟悉网页制作,也精通Java语言,无法实现开发人员的明确分工,导致开发效率低下。

在大型Web项目的开发中,将程序代码分割成带有清晰功能的组件是一种更好的方式。MVC框架将网页内容的产生、网页内容的显示、业务对象的处理划分成3个相对独立的层,因而可以很方便地实现表示层和业务处理层的分离。同时,这也使得网页制作人员和软件开发人员之间可以有明确的分工。

以应用MVC框架开发一个基于网络的扑克牌游戏程序为例:在开发过程中,网页制作人员可以只负责游戏界面的制作,包括扑克牌牌面的设计、指令按钮和时钟界面的制作、以及界面的美工等等;软件开发人员则可以只负责用Java代码来描述和实现游戏规则。这样,就很好地实现了网页制作人员和软件开发人员的分工。再者,如果打算在该游戏程序上增加超时后托管出牌的功能,则只需要在业务处理层上作出相应的调整,而不需要对整个游戏程序进行系统性地调整。显然,MVC框架的应用,使得程序的扩展性、可重用性大大加强了。开发的项目越复杂,应用MVC框架的优势就越明显。以下简单归纳了应用MVC框架的优点。

(1) 有利于程序的维护和功能的扩展。在MVC框架中,3个层在功能和结构上是相互独立的,每个层负责实现各自的功能。如果某个层的需求发生了变化,则只需要更改相应层中的代码即可,而不会影响到其他层中的代码。

(2) 有利于开发中的分工。在MVC框架中,由于把应用程序划分成了3个层,可以很好地实现开发中的分工。网页制作人员可以开发视图层,熟悉业务的人员可以开发业务层,其他人员可以开发控制层。

(3) 有利于组件的重用。MVC框架的分层开发模式,有利于组件的重用。如控制层可以成为一个独立的组件,表示层可以成为一个通用的界面,而业务处理层也可以成为一个独立的功能模块,从而可以把这些组件应用到其他的项目开发中。 

4 总体设计

4.1 系统主要功能设计

通过对功能的描述,本系统为三个部分:用户简历信息部分,会员简历信息部分,管理员信息管理部分。

用户简历信息部分为三个模块:用户登陆与注册模块,用户简历信息的管理模块还有申请会员模块。

会员简历信息部分分为三个模块:会员登陆和注册模块,会员简历信息的管理模块,还有会员特权的更炫简历查看模块。

管理员信息管理部分为两个模块:管理员登陆模块,管理员对用户和会员信息的管理模块。

本网站系统是“简历网”,所以本网站系统的实现重点是个人简历的生成和管理。本系统的需求分析采用的是自顶向下的原则,将整个系统进行模块的划分,再将每个模块进行细分,分成更小的独立功能模块,然后再给出独立功能模块的功能描述和流程图,从而具体说明系统将要完成的最终功能。

以下是具体的模块的需求分析描述:

(1) 用户简历信息部分

用户简历信息部分的主要作用是对系统的各种个人简历信息进行管理,包括用户的个人信息,以及用户的简历信息。其中的用户个人信息管理模块提供用户的注册,登陆,找回密码等功能。用户的简历信息提供用户可以选择模板进行简历的填写,还可以对自己填写的简历进行查看,删除和修改。用户点击添加简历按钮的时候会进入选择简历模版的页面,其中有3大模版供选择,选择一个模版即可开始编辑自己的简历了,当通过本网站的验证后,简历就被写入本网站的数据库,方便用户的修改和删除。如果用户想体验本网站更人性化的功能,还可以申请本网站的会员。

(2) 会员简历信息部分

会员简历信息部分分为会员登陆和注册模块,会员简历信息的管理模块,还有会员特权的更炫简历查看模块,会员登录注册,还有会员信息的管理都和用户模块基本相同,主要是会员特有的功能更炫简历查看模块,该模块主要是会员专有的模块,当用户成为会员之后,可以享受更多的功能,例如本网站有大量的简历封面图片供大家下载,还搜集了各种外国优秀的英文简历供大家参考,如果有人喜欢多页简历,本网站也有这个模块。 

(3) 管理员信息管理部分

该部分主要是管理员对用户和会员信息的管理,当管理员登录成功后可以进入管理员的首页,在其中可以对用户和会员的信息进行查看和删除。

系统功能模块图如4-1所示:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4-1 系统功能模块结构图

 

4.1.1 用户信息管理

用户模块主要包括用户信息管理,简历信息管理以及申请会员模块。

用户信息管理的功能模块划分如图4-2所示。

4-2 用户信息管理的功能模块划分

 

1)用户注册

该功能的作用是用户提交个人注册信息到服务器,以获得用户身份。提交的信息包括用户名,密码以及有关的个人信息。示意图如图4-3所示:

4-3用户注册的流程

2)用户登录

该功能的作用是用户填写用户名和密码,然后提交,服务器通过数据库验证填写的信息,如果正确则进入用户首页。示意图如图4-4所示:

4-4用户登录的流程

3)找回密码

该功能是用户通过填写用户密码保护信息,通过验证后可以在页面内显示你的密码。意图如图4-5所示:

4-5找回密码的流程

4.1.2 简历信息管理

简历信息管理主要包括选择模板填写简历,选择模板查看和修改简历,选择模板删除简历。

简历信息管理的功能模块划分如图4-6所示。

4-6 简历信息管理模块功能划分

1)填写简历

本网站提供了三个模板供用户选择,用户选择适合自己的简历模板进行填写,当通过验证后,简历就填写成功了。具体示意图如图4-7所示:

4-7 填写简历的流程

2)查看和修改简历

用户通过选择模板查看自己曾经填写的简历,如果曾经填写过就弹出信息,如果没有填写过就让用户重新填写这个模板信息,功能模块如图4-8所示。

图4-8 查看和修改家里的流程

3)删除简历

进入选择简历模板,进行删除,具体示意图如图4-9所示:

4-9 删除简历的流程

4.1.3 申请会员模块

用户要是想体验更多的功能,需要申请会员,本网站申请会员的机制是一个生成随机数的机制,用户有百分之三十的几率能成为会员,其示意图如图4-10所示:

4-10 申请会员模块的流程

4.1.4 会员信息管理模块与会员的简历信息管理模块

会员信息管理模块与会员的简历信息管理模块与普通用户的基本相同,在这里简单的略过。

4.1.5 更炫简历功能

 用户申请成为会员后,可以有会员特权,多了三个特有的功能,一个是简历首页的下载,一个是英文简历的查看,以及多页简历的参考。

更炫简历功能模块的划分如图4-11所示

4-11 更炫简历功能的划分

4.1.6 管理员信息管理

该功能即管理员登陆,管理员输入用户密码进行验证,验证成功进入管理员首页,由于是管理员,所以不设置找回密码功能,示意图如图4-12所示:

4-12 管理员信息管理

4.1.7 管理员管理信息模块

该功能是管理员专用的功能,其中有对普通用户信息的管理和对会员用户信息的管理,其划分如图4-13所示

 

4-13 管理信息模块的划分

1)管理员对普通和会员用户信息的管理

管理员可以对用户信息进行查看和删除。具体示意图如图4-14所示:

4-14 管理员对用信息管理的流程

4.2 系统的三层架构设计思想

系统主体架构采用界面—中间件—数据库这样的三层结构,使系统业务逻辑和数据库基础操作与用户应用界面分开,能够使程序员更专注于Java程序的开发,而界面设计者专注于用户界面的开发,在一定程度上明确了系统开发的分工。其示意图如图4-15所示:

4-15 结构层次图

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5 数据库设计 

5.1 关系数据库的基本概念

关系数据库是数据库来组织数据的一种方式,是现在数据库中广泛应用的一种流行关系。关系数据库的理论是建立在数学的集合的基础上,是集合论在数据组织上的应用。在关系数据库中所有的数据都按照表的方式组织。它主要是通过建立数据库中的表之间的对应关系来维护数据,在关系数据库中,所有的实体和实体之间的关系都是用关系来表示的。实体间的关系可以有一对一,一对多和多对多的关系。

5.2 系统E-R图

E-R图也就实体和关系图。数据库设计的开始,首先考虑的是如何用数据模型来定义数据库的结构与语义,以及如何对现实中的事物进行抽象。在本系统中采用实体联系模型E-R模型)来描述数据库的结构与语义,以对现实世界进行初步的抽象。E-R图模型的优点在于它是直接从现实世界抽象出实体类型及实体间联系,对现实的事物比较直观。它摒弃了许多与具体计算机相关的部分,通过一般性的叙述来描述实体之间的关系,比较接近于人的思维,较易理解。通过分析确定了实体之间的关系之后再E-R图来表示数据模型。这样在初步的设计中能够快速而简便地定义出系统之间的联系。

5.3 数据库概念结构设计

5.3.1 局部E-R图

1)用户信息关系中本系统能够设置了六个属性,其中用于登录验证的是用户名和密码,用与找回密码验证的是父亲姓名和母亲姓名以及用户名和电话,还有贯穿整个系统的关键主码称呼,本系统主要通过称呼这个主键,把用户和其他关系联系起来,具体的实体图如图5-1所示:

5-1 用户信息的E-R图

2)会员信息关系的设计基本与用户信息相同,所以在这里就一笔略过,具体的实体图同上图5-1所示。

 
   

3)管理员信息关系的设计中由于身份的特殊,所以用了加密的两个属性,用户名和密码,能成功完成登录即可。具体的实体图如图5-2所示。

5-2 管理员信息的E-R图

 
   

4)简历模版1信息关系的设计中用到了大量的属性,帮助用户能很好的表达自己,成功的生成一份优秀的简历,这份简历适合应届毕业生,主要体现了毕业生的学历,学校还有所学的技能等重要属性,在本关系中也有“称乎”这个属性,通过这个属性把简历和用户紧密的联系起来了。具体的实体图如图5-3所示。

5-3 简历模版一的E-R图

 
   

5)简历模版二的信息关系和简历模版一有很大的不同,这个模块把简历分成了很多个部分,有基本信息部分,联系信息部分,求职意向部分,技能专长部分还有工作经验部分,而且这个模版主要注重的是用户对自己岗位的要求,对岗位要求的信息比较细致,比如职位名称,发展方向,薪金待遇等等,这个简历模版二更适合所用的群众,不管是参加工作的还有应届毕业生都适合,具体的实体图如图5-4所示。

5-4 简历模版二的E-R图

 

5)简历模版三的信息关系设计主要是针对工作了的人群设计的,在模版三中和模版二相同对几个模块进行了划分,其中主要对用户上一次工作有很多的表述,比如公司名称,公司性质,职位名称,工作时间,上次月薪,奖励次数,职位职责,离职原因等信息。由于很多和模版二相同,所以主要把特有的上次工作经历模版的E-R图画一下。

 
   

其部分实体图如图5-5所示。

5-5 简历模版三的部分E-R图

5.3.2 全局E-R图

所有局部E-R模式都设计好了后,接下来就是把它们综合成单一的全局概念结构。全局概念结构不仅要支持所有局部ER模式,而且必须合理地表示一个完整、一致的数据库概念结构。

(1)确定公共实体类型

为了给多个局部ER模式的合并提供开始合并的基础,首先要确定各局部结构中的公共实体类型。在这一步中我们仅根据实体类型名和键来认定公共实体类型。一般把同名实体类型作为公共实体类型的一类候选,把具有相同键的实体类型作为公共实体类型的另一类候选。

(2)局部ER模式的合并

合并的原则是:首先进行两两合并;先合并那些现实世界中有联系的局部结构;合并从公共实体类型开始,最后再加入独立的局部结构。

(3)消除冲突

冲突分为三类:属性冲突、结构冲突、命名冲突。

设计全局ER模式的目的不在于把若干局部ER模式形式上合并为一个ER模式,而在于消除冲突,使之成为能够被所有用户共同理解和接受的同一的概念模型。

(4)全局ER模式的优化

 
   

在得到全局ER模式后,为了提高数据库系统的效率,还应进一步依据处理需求对ER模式进行优化。一个好的全局ER模式,除能准确、全面地反映用户功能需求外,还应满足下列条件:实体类型的个数要尽可能的少;实体类型所含属性个数尽可能少;实体类型间联系无冗余。

5-6 全局E-R图

5.4数据库的逻辑结构设计

本系统中数据库采用MYSQL。数据库是网站的核心,数据库设计的合理与否对网站的建设有着至关重要的影响。一个良好的数据库开发过程一般是先系统分析,再逻辑设计,然后物理实现。逻辑设计中根据系统分析设计一个关系模型,物理设计为逻辑设计中的数据模型选取一个最合理的应用环境的物理结构,通常选取一个常用数据库软件,用数据库软件创建与逻辑设计中数据模型对应的数据库。

1)user表。用户信息表,用来用户登录,用户注册用,主键为称呼cell。如表5-1所示:

5-1 user表

列名

数据类型

长度

允许空

作用

username

varchar

100

 

password

varchar

100

 

cell

varchar

100

主键

tel

varchar

100

 

father

varchar

100

 

mather

varchar

100

 

(2)member表。会员信息表,用来负责会员的登录和注册信息,主键为cell。如表5-2所示:

5-2 member表

列名

数据类型

长度

允许空

作用

membername

varchar

100

 

password

varchar

100

 

cell

varchar

100

主键

tel

varchar

100

 

father

varchar

100

 

mather

varchar

100

 

(3)manager表。管理员信息表,用来负责管理员的登录,主键为managername。如表5-3所示: 

5-3 manager表

列名

数据类型

长度

允许空

作用

managername

varchar

100

主键

password

varchar

100

 

(4)mo_1表。简历模版一表,用来存储用户的简历信息,主键为cell。如表5-4所示:

5-4 mo_1表

列名

数据类型

长度

允许空

作用

Name

varchar

100

 

Sex

varchar

100

 

birth

varchar

100

 

Birthplace

varchar

100

 

ethnic

varchar

100

 

heigth

varchar

100

 

education

varchar

100

 

time

varchar

100

 

english

varchar

100

 

school

varchar

100

 

vocational

varchar

100

 

E-mail

varchar

100

 

tel

varchar

100

 

job

varchar

100

 

skill

varchar

100

 

hobby

varchar

100

 

Job_experience

varchar

100

 

Term_experience

varchar

100

 

assess

varchar

100

 

cell

varchar

100

主键

(5)mo_2表。简历模版二表,用来存储用户的简历信息,主键为cell。如表5-5所示:

5-5 mo_2表

列名

数据类型

长度

允许空

作用

name

varchar

100

 

sex

varchar

100

 

birth

varchar

100

 

school

varchar

100

 

ethnic

varchar

100

 

education

varchar

100

 

time

varchar

100

 

tel

varchar

100

 

E_mail

varchar

100

 

address

varchar

100

 

Job_name

varchar

100

 

Job_developing

varchar

100

 

Job_address

varchar

100

 

Job_time

varchar

100

 

Job_salary

varchar

100

 

Job_limit

varchar

100

 

skill

varchar

100

 

english

varchar

100

 

computer

varchar

100

 

hobby

varchar

100

 

Edu_experience

varchar

100

 

job_experience

varchar

100

 

assess

varchar

100

 

cell

varchar

100

主键

(6)mo_3表。简历模版三表,用来存储用户的简历信息,主键为cell。如表5-6所示:

5-6 mo_3表

列名

数据类型

长度

允许空

作用

Name

varchar

100

 

sex

varchar

100

 

birth

varchar

100

 

birthplace

varchar

100

 

marry

varchar

100

 

address

varchar

100

 

education

varchar

100

 

school

varchar

100

 

tel

varchar

100

 

E_mail

varchar

100

 

Job_name

varchar

100

 

Job_developing

varchar

100

 

Job_address

varchar

100

 

Job_time

varchar

100

 

Job_salary

varchar

100

 

Job_limit

varchar

100

 

skill

varchar

100

 

english

varchar

100

 

computer

varchar

100

 

drive

varchar

100

 

hobby

varchar

100

 

Com_name

varchar

100

 

Com_character

varchar

100

 

Com_job

varchar

100

 

Com_time

varchar

100

 

Com_salary

varchar

100

 

Com_encourage

varchar

100

 

Com_duty

varchar

100

 

Com_resign

varchar

100

 

Com_experience

varchar

100

 

cell

varchar

100

主键

(7)moban表。模版表,用来管理用户都写几分简历模版,用这个表把用户和简历联系在一起,主键为cell。如表5-7所示:

5-7 d_moban表

列名

数据类型

长度

允许空

作用

cell

varchar

100

主键

mo1

varchar

100

 

mo2

varchar

100

 

mo3

varchar

100

 

6 详细设计及其实现

6.1 网站首页

如图6-1所示,首页有4个按钮链接,点击不同按钮进入不同的功能。

6-1 网站首页

6.2 普通用户模块

6.2.1 用户登录功能的实现

如图6-2所示,输入用户名和密码就可以登录到用户首页,本页还设置了找回密码按钮和返回首页按钮,并对文本框做了js验证。

6-2 系统注册界面

6.2.2注册功能的实现

如图6-3所示,本注册信息分为两个模块,一个是基本信息,一个是密保信息,每个文本都做了js验证。点击获取验证码就会现实一个验证码。

6-3 系统注册填写信息界面

6.2.3找回密码功能的实现

如图6-4所示,找回密码模块要输入正确的信息才能在密码那里现实自己的密码,否则现实输入的信息错误,每个文本都做了js验证。

6-4找回密码界面

6.2.4普通用户首页的实现

如图6-5所示,普通用户首页有四个功能可用,其他三个要成为会员才能享受,通过填写简历,查看简历,删除简历可以很轻松的对简历进行维护。

6-5普通用户首页界面

6.2.5选择模版页面的实现

如图6-6所示,这是本网站比较友好的首页,选择不同的模版可以进入不同的简历,用户可以选择一个适合自己的简历进行填写和修改。 

6-6选择模版界面

6.2.5简历模版页面的实现

如图6-7所示,本网站有三个简历模版,在这里就简单截取一个模版,简历模版用来填写用户信息。用来保存,查看和修改自己的简历。

6-7简历模版界面

6.2.6删除简历页面的实现

6-8简历模版界面

6.2.7申请会员页面的实现

如图6-9所示,输入称呼后验证真确,点击申请按钮就能看自己是否成为会员了。

6-9申请会员界面

6.3会员用户模块

6.3.1简历首页下载的实现

如图6-10所示,这是会员才享有的特权,当本页做了Jquery美化,点击下面的18个按钮就会现实不同的首页,而且做了时间的设置,每隔几秒就会现实下一张图片。

6-10简历首页下载界面

6.3.2英文简历页面的实现

如图6-11所示,这是会员才享有的特权,当本页也做了Jquery美化,五个div图层会随着时间自动滚动,这样就可以看到本网站所有的英文简历了。

6-11英文简历界面

6.3.3多页简历页面的实现

6-12多页简历下载界面

6.4管理员模块

6.4.1管理员首页的实现

如图6-13所示,选择左边的两个图片按钮对用户信息进行管理。

6-13管理员首页界面

6.4.2管理信息界面的实现

如图6-14所示,选择当选择普通用户信息的时候就会现实所有用户的信息,管理员可以对这些信息进行删除等管理。

6-14管理信息界面

7 系统测试

软件测试是为了发现软件的错误而执行程序的过程,或者说软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。

软件测试在软件生存期中横跨两个阶段,通常在编写出每一个模块之后就对它做必要的测试,称为单元测试,模块的编写者与测试者通常是同一个人。编码与单元测试属于软件生存期中的同一个阶段,在这个阶段结束之后,对软件系统还要进行各种综合测试,这是软件生存期的另一个独立的阶段,即测试阶段,通常由专门的测试人员承担这项工作。

7.1 黑盒测试

10年来,软件测试作为一个独立的过程有了长足的发展,也得到了项目利益相关人和业务主管人员的高度重视。同时,各种各样的新技术也在不断地引入到软件测试的领域中。除了传统的测试技术之外,还有为适应当前复杂的业务需求和开发逻辑而引入的各种新技术,都使得软件测试变得更有意义,也更有目的性。本章讨论了一些被测试行业广泛采纳的、流行的测试技术。软件测试方法一般分为动态测试方法与静态测试方法。动态测试方法中又根据测试用例的设计方法不同,分为黑盒测试与白盒测试两类。

黑盒测试,又叫做功能测试,是指测试条件主要根据程序或系统的功能实现来制定。也就是说,测试人员所要求的信息是输入的数据和观察到的输出结果,但他们不知道程序或系统是怎样工作的。正如一个人不必知道汽车的内部是如何工作的而只管去开它,同样也不必知道程序的内部结构而只管去执行它。测试人员侧重于根据规约去测试程序的功能。在黑盒测试中,测试人员把程序看作一个黑匣子,对程序或系统的内部结构并不关心。这一类的测试包括决策表、等价类划分、范围测试、边界值测试、数据库集成测试、因果图、正交阵列测试、阵列和表测试、异常测试、极限测试、随机测试。

黑盒测试力图发现下述类型的错误:

1)功能不正确或遗漏了功能。

2)界面错误。

3)数据结构错误或外部数据库访问错误。

4)性能错误。

5)初始化和终止错误。

7.2 白盒测试

白盒测试,又称逻辑驱动测试或结构测试,是把测试对象看作一个打开的盒子。利用白盒测试法进行动态测试时,需要测试软件产品的内部结构和处理过程,不需测试软件产品的功能。它是知道产品内部工作过程,可通过测试来检测产品内部动作是否按照规格说明书的规定正常进行,按照程序内部的结构测试程序,检验程序中的每条通路是否都有能按预定要求正确工作,而不顾它的功能,白盒测试的主要方法有逻辑驱动、基路测试等,主要用于软件验证。

本系统采用黑盒测试。测试结果表明,各个功能模块均已达到要求,程序运行正常。下面是本系统中部分采用黑盒测试的测试实例如下图所示。

1)本网站在所有的登录页面做了js验证,当没输入用户名和密码的时候现实alert窗口。如图7-1所示。

7-1登录界面

2)当用户名密码输入不正确的时候也会出现alert窗口。如图7-2所示。

7-2登录界面

3)在注册页面做了验证码的信息,当点击获取验证码的时候会现实验证码,如果验证码没有书写正确就会现实提示信息。如图7-3所示。

7-3注册信息界面

4)如果点击了获取验证码就会现实验证码。如图7-4所示。

7-4注册信息界面

5)在简历信息的页面也做了js控制,所有的信息都不能为空,如果有信息为空那个文本框就会显示粉色,如果都填写了就会恭喜你填写成功。如图7-5所示。

7-5简历信息的部分界面

7-6 简历信息填写成功界面

    

本次的毕业设计是对大学四年学习的一个总结。在历时将近半年的时间里,按照软件工程软件开发的流程对系统进行设计开发,其中遇到了许许多多的问题,在遇到问题,分析问题和解决问题的过程中,学习了很多知识,系统也慢慢地成型,虽然在功能的细节上还是比较粗糙,但总体上还是达到了设计要求。

通过这次毕业设计,对Eclipse开发工具的使用,对jdk、tomcat编译运行环境的安装配置,对MySQL数据库的更新、删除、插入、查询等基本操作更加熟练;对J2EE开发流程有了进一步的熟悉;对JSP+servlet+mysql技术有了进一步的应用;对软件部署、测试和web程序对各浏览器的兼容技巧有了进一步的学习。总之,这次毕业设计在J2EE的开发技术和动手实践能力上成熟了很多,是大学四年学习的总结,也是今后工作的宝贵经验。

本次毕业设计,完成了简历生成与管理系统的大部分基本功能,当然,由于开发经验尚浅,在系统的界面设计方面还做得不是很好。该系统的设计与实现基本完成,现已能够基本达到设计要求,尽管如此,仍然存在有许多不足之处,还无法和别的大型简历系统相提并论,还需要进一步学习。

随着全球互联网的逐步发展和深入,在线招聘将成为传统招聘必不可少的经营模式之一。随着互联网的发展,它将有力的改变现存普通招聘模式,增强企业与个人的紧密联系,给企业提供高效率低成本的招聘形式,所以简历生成与管理系统的广阔市场前景还有待开发。

通过本次毕业设计,使本人的能力得到很大的提高,不但能独立的进行软件的开发,而且在软件设计与开发过程中提高了软件开发技能和编程技能,希望在以后的工作中继续得到锻炼。

   

首先,要感谢我的指导老师。本课程设计的选题、构思、写作与定稿都离不开老师的悉心指导和关怀。在毕业论文和设计的完成过程中,老师在百忙之中查阅和修改本论文,给予了很多悉心的指导,对论文的修改建议很细致,给予了很多完善论文的启发。在指出论文中存在的问题和提供建设性修改意见的同时,也不忘鼓励我发扬长处,让我很受欣慰和鼓舞,从老师身上,我学到了很多东西,从为人处事到求学求知,包括发现问题,分析问题,解决问题的态度和技巧,都将是我今后工作和生活中最宝贵的财富。通过与老师的交流,以及整个毕业设计的完成实现,我在各个方面都得到了很大的提高,在这里,学生真诚地对涂老师表示深深的感激与谢意。

其次,还要感谢我的朋友们,在设计过程中他们也给予了很多帮助,给予了我很多新奇的创意和开阔的思路,在此向他们表示感谢。

通过这一阶段的学习和研究,系统终于得以实现,其中耗费了很多精力和时间,但本次设计是大学对即将走进社会的我们的一次知识和能力的综合考验,这将是激励我去创造的一个起点,会永远激励着我前进。

最后,衷心感谢各位老师在百忙中审阅我的论文。

参考文献

[1] 吴明辉.胡煜.窦亮.JSP网络办公及商务应用系统开发实例导航.北京.人民邮电出版社.2003

[2] 曹建.Dreamweaver与ASP实战演练[M].北京:电子工业出版社.2004.1.

[3] 李波涛.网页设计图解教程[M].北京:清华大学出版社.2005.2.

[4] 王国平.Dreamweaver MX 2004网页时尚设计师[M].北京:电子工业出版社.2005.9.

[5] Ben Forta.刘晓霞.钟鸣译. MySQL必知必会[M].人民邮电出版社.2009.1.

[6] 计磊.李里.周伟.J2EE整合应用案例[M].人民邮电出版社.2007.

[7] 扬威.WEB网络开发技术[M].人民邮电出版社.2008.

[8] 石志国.JSP动态网站编程.北京.清华大学出版社.2001

[9] 丁贵广.JSP编程基础与实例.北京.机械工业出版社.2002

[10] 章立民.程序开发与界面设计秘诀[M].机械工业出版社.2006.

[11] 陈国君.Java2程序设计基础.清华大学出版社.2006

[12] 耿祥义.张跃平.JAVA2实用教程(第二版)[M].清华大学出版社.2004.11.

[13]James Martin,Carma McClure .Software Maintenance the Problem and Its Solutions.retice-Hal,Inc.,1983,9-14

[14] Juan Lipson Vuong.A semantics-based routing scheme for grid resource discovery[M].E-Science: First International Conference on E-Science and GridComputing,2005:58-70,90.

猜你喜欢

转载自www.cnblogs.com/dejyyhg/p/12657440.html
今日推荐