刘磊,刘邦桂
(广东开放大学、广东理工职业学院,广州 510000)
基于SSH框架的多用户简历生成与管理系统设计和实现
刘磊,刘邦桂
(广东开放大学、广东理工职业学院,广州 510000)
设计和实现一个基于Web的简历快速生成和管理系统,游客可以浏览公开的简历墙,注册用户可以通过选择布局、模块、样式快速生成自己的简历。系统后端基于Hibernate、Spring、Struts三大经典框架组合开发,前端基于当前流行的Bootstrap响应式布局框架,开发的网页能自动适应不同分辨率。从流程设计、功能设计、数据模型设计、效果实现等软件开发的关键阶段论述本系统的开发过程。
SSH框架;简历生成;简历管理
简历是每一个求职者在求职路上的敲门砖,一份优秀的简历,可以在众多求职者简历中脱颖而出,给招聘人员留下深刻的印象。一份简历最大的挑战就是如何触动招聘人员,这需要行业经验,和站在HR角度思考问题的能力。求职者需要思考简历中展示内容及版式安排。目前,多数求职者会在简历中罗列多条个人经历,容易造成简历风格杂乱,重点不够突出。制作简历一定要为阅读者着想,简历是个人宣传的一种手段,一个整齐利落风格的简历必然会脱颖而出。本文开发的简历管理系统能够为用户提供多种风格的简历模版,来制作简历。同时,支持用户制作多份不同风格的简历并在线对其进行修改保存。此外,提供针对个人信息进行精简分析,支持用户对关键信息进行醒目设计,用户可以依据不同的求职意向进行不同的偏好设置。简历长度没有一定之规,一般而言,最好能把篇幅控制在两页内。求职者需要打印大量的纸质版简历,如今,基于Web的简历管理系统支持在线分享简历及通过电子邮件的形式发送给招聘方,同时也支持本地导出进行打印。
经过分析,我们总结了优秀简历应该具备的标准,开发了用户可以自主选择简历模块、风格、排版,以快速生成简历的管理系统。以下,从软件开发周期的角度详细论述本系统的开发过程。
本系统使用角色包括游客、注册用户和管理员。首先登录系统主页,游客可以浏览公开的简历墙、查看简历详细内容;普通用户注册账号,登录系统成功后进入个人简历管理界面,勾选模块、选择风格,填写简历内容,编辑简历内容,快速发布简历。注册用户业务流程图如图1所示。
系统后台管理地址只对管理员角色开放,管理员输入正确的账号密码登录后台管理界面,可以对注册用户和简历进行更高级别的管理,并查看系统的一些统计数据。管理员业务流程图如图2所示。
图1 普通用户业务流程图
图2 管理员业务流程图
本系统提供两个管理界面:注册用户使用的个人简历管理界面,管理员使用的后台管理界面。游客、注册用户和管理员都可以查看公开的简历,系统前台提供浏览简历墙、搜索简历、查看简历详细内容的功能;对于普通用户,系统前台提供用户注册账号和登录账号功能,普通用户登录成功后进入个人简历管理界面,个人简历中心提供新建简历、编辑简历、保存发布简历的功能,新建简历可以选择简历模块、一键生成简历,编辑简历可以对简历内容添加信息、删除信息、修改信息,保存发布可以选择公开或不公开两种方式;系统后台提供注册用户管理和更高权限的简历管理,管理员登录后台,可以管理注册的普通用户,可以查看生成的简历、审查简历、删除不符合要求的简历,统计简历的访问量等。系统总体功能结构图如图3所示。
图3 系统总体功能结构图
通过分析系统参与角色,可以得到两个基本实体:用户和简历,其中用户可以分为普通用户和管理员,用户实体最重要的属性包括注册用户名和密码;简历实体包括基本简历模块和可以自由组合的模块,基本简历模块存储简历名称、照片、样式、布局、访问次数、自由组合模块注册标记等;系统内置一些可以自由组合的模块,分别使用不同的模块表存储信息,针对允许用户可以添加或删除自由模块,在基本简历模块表设置多个字段以标记是否包含某个自由模块;针对允许用户对自由模块的内容可以添加多条,将自由模块设计成一些相互独立的表,再通过外键关联到基本简历模块表。系统的E-R模型图如图4所示。
本系统后端选用经典的SSH集成框架开发,SSH集成框架是Hibernate、Spring、Struts三大框架的组合,基于SSH框架的系统从职责上分为四层:表示层、业务逻辑层、数据持久层和域模块层,可以帮助开发人员在短期内搭建结构清晰、可复用性好、维护方便的Web应用程序。其中使用Struts作为系统的整体基础架构,负责MVC的分离,在Struts框架的模型部分,控制业务跳转,利用Hibernate框架对持久层提供支持,Spring做管理,管理Struts和Hibernate。具体做法是:首先用面向对象的分析方法根据需求提出一些模型,将这些模型实现为基本的Java对象;然后编写基本的DAO(Data Access Objects)接口,并给出Hibernate的DAO实现,采用Hibernate架构实现的DAO类来实现Java类与数据库之间的转换和访问;其次使用Struts连接业务逻辑和视图展现,接收、处理、发送数据并控制流程;最后由Spring做整合,管理Struts和Hibernate,提供IOC容器使代码松耦合以及AOP框架的切面功能。
图4 系统数据库模型图
本系统前端选用流行的Bootstrap框架,Bootstrap是目前很受欢迎的HTML、CSS和JS框架,用于开发响应式布局、移动设备优先的Web项目,它简洁灵活,使得Web开发更加快捷,Bootstrap基于HTML5、CSS3、jQuery开发,Bootstrap内置的CSS媒体查询(Media Query)功能,可以开发出响应式布局的网页,自动适应不同分辨率效果;同时提供了丰富的Web组件,包括下拉菜单、按钮组、按钮下拉菜单、导航、导航条、路径导航、分页、排版、缩略图、警告对话框、进度条、媒体对象等,使用这些组件,可以快速地搭建一个漂亮、功能完备的网站前端。
本系统面向制作简历和查看简历的需求人群,为注册用户提供快速制作简历的功能,也为游客提供了方便查看简历的功能。下面选择几个关键功能分析其实现。
(1)快速生成简历
这是本系统的核心功能。为了实现用户可以自由组合模块生成简历,系统数据模型采取了一个主表、多个从表的模式,一个主表是简历基本信息表,多个从表代表了多个简历模块,表1展示了主表的数据模型。
表1 简历主表tb_resume数据模型
各模块表分别包含了自己的主题信息字段,再通过外键rid与主表关联。下面的代码展示了如何生成一份简历。
制作简历主界面实现效果如图5所示,可以在左边选择排版、模块、主题颜色,右边填写简历信息。
图5 简历制作主界面
每个模块也可以添加或删除多条记录,以相关技能模块为例,实现效果如图6所示。
图6 相关技能模块
(2)浏览简历
简历的良好展示是本系统的另一个重要功能,查询简历信息包括查询主表和所有关联从表的信息,其实现代码如下:
简历的展示效果如图7所示。
图7 简历展示效果图
SSH集成框架是经典的J2EE三层框架,Bootstrap是流行的前端开发框架,本文使用这两大框架,以制作简历、浏览简历的需求为出发点,从软件开发周期的角度详细论述了多用户简历生成与管理系统的设计和实现,相信对于读者进行软件开发有一定的参考意义。
[1]翟高粤.基于J2EE技术的SSH框架的改进及应用[J].计算机时代,2012(10).
[2]韩宝强.SSH框架原理剖析与学习使用技巧研究[J].软件导刊,2012(05).
[3]韩义亭,张成宇.SSH架构及其在Web开发中的应用[J].网络安全技术与应用,2007(10).
[4]邵雪航,王大鹏.基于SSH框架技术下的Web项目的研究与实现[J].数字技术与应用,2012(10).
[5]梁弼.SSH框架整合技术研究及应用[J].西安文理学院学报(自然科学版),2011(03).
[6]周利江.基于SSH框架的J2EE应用研究[J].电脑编程技巧与维护,2012(12).
[7]陈曦.SSH下的新闻发布系统研究[J].科技传播,2012(18).
Design and Implementation of Multi User Resume Generation and Management System Based on SSH Framework
LIU Lei,LIU Bang-gui
(The Open University of Guangdong,Guangdong Polytechnic Institute,Guangzhou 510000)
Designs and realizes a fast generation and management system based on the resume Web,visitors can browse the public resume wall, registered users can choose the layout,style module,rapid generation of your resume.This system is based on Hibernate,Spring,Struts three classic framework combination development,front-end based on the current popular Bootstrap response layout framework,the development of Web pages can automatically adapt to different resolutions.Discusses the development process of the system from the key stages of software development,such as process design,function design,data model design,effect realization and so on.
SSH Framework;Resume;Resume Management
1007-1423(2016)36-0058-05
10.3969/j.issn.1007-1423.2016.36.015
刘磊(1984-),男,山东人,硕士,讲师,高级信息系统项目管理师、高级程序员,从事领域为项目管理、Web开发、数据库技术研
2016-11-25
2016-12-15
广东省优秀青年教师培养项目(No,YQ2015181)、广东理工职业学院科研项目(No.JG201334、No.1427)
刘邦桂(1983-),江西赣州人,硕士研究生,讲师,高级工程师,研究方向为数据挖掘、云技术、网络安全、服务器技术等