【《基于java在线招聘系统的设计与实现》10000字】_第1页
【《基于java在线招聘系统的设计与实现》10000字】_第2页
【《基于java在线招聘系统的设计与实现》10000字】_第3页
【《基于java在线招聘系统的设计与实现》10000字】_第4页
【《基于java在线招聘系统的设计与实现》10000字】_第5页
已阅读5页,还剩26页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

东北林业大学高等教育自学考试本科毕业设计(论文)相关技术原理和开发工具基于JavaWeb设计和编写的网络招聘系统,需要使用动态网页开发技术和数据库完成创建。2.1程序语言的选择2.1.1Java概述Java产生于1995年前后,是詹姆斯.高斯林用C语言编的,后来被Sun公司购买上市,Java是面向对象的,所有东西都能变成对象,就是出于这样的想法,为程序员打开思路,更高级的语言应运而生[5]。2.1.2Java特点Java语言用途很广,具有跨平台性。在不同java版本平台上写的java文件,经过JVM虚拟机改造后,字节码文件的最终作用是一样的。从整体上看,Java正是适应了迄今为止程序员们在新时代中不断探索科技,顺应时代发展而产生出来的不得不用的语言。它不仅能够实现各种复杂而又庞大的程序功能,而且还具有非常高的效率。2.1.3Servlet概述Servlet在服务端运行一个java小程序。继承HttpServlet可在浏览器中获取。其主要功能就是用于从浏览器接收数据并回到服务器进行处理。Servlet实现生命周期主要有以下几个方法:一是实例化对象init()方法:请求首次接入时实例化,是指该服务器首次接入后,servlet初始化后调用init方法,且仅调用1次。使用该方法可以减少服务器端计算量和提高系统性能。二是调用工作方法中的service()法:在每一个请求中调用这个方法,所述方法执行获得用户请求的模式,通过用户请求方式调用相对应的doGet或者是doPost方法。三是销毁destory()方法:当容器检测到一个Servlet实例应该从服务中被移除的时候,容器就会调用实例的destroy()方法[6]。Java程序必须继承HttpServlet,才能代表是一个Servlet类,程序必须重写doGet(),doPost()方法,程序必须在web.xml中配置<servlet>,<servlet.mapping>(或者通过注解)。Serlvet运行原理见图2-1。图2-1servlet原理图2.2MySQL数据库实际上,MySQL数据库也是中小型级别,当今许多中小型企业(只要不属于国企,就可以算作中小型数据库)都在使用MySQL数据库,主要原因如下:第一,其是免费的;第二,支持多种操作系统运行;第三,效率较高。由于用户进入需要使用密码登录,所以一般都会用到加密方式来进行安全保护。2.3开发工具2.3.1编码工具IDEAIDEA全称IntelliJIDEA,是目前最受开发者欢迎的java语言开发集成环境。能够对代码进行查审,对GUI进行创新设计等,其作用可谓超出eclipse、Myeclipse等其他手段。IntelliJIDEA中的各个方面设计都旨在方便开发人员的使用,提高体验感[7]。用IntelliJIDEA对源代码做索引后,其通过提供每一个语境下的相关推荐,来提供一种快捷和智能化的感受:IDEA可以瞬间而巧妙地完成编码,动态代码分析与可靠重新构建工具。2.3.2数据库连接工具Navicat在Navicat中写入的SQL语句没有大小写之分,无论书写大写或小写,Navicat默认为转换为大写字母,Navicat工具能够连接汗各种数据库而不局限于MySQL,也可与Oracle和其他数据库联系起来,实现安全和简便地创建。Navicat所具有的特性能够满足程序员的各种要求,而对初学数据库服务器的人来说,这是一件颇为简单的事情。同时,其还拥有非常完整的图形用户界面(GUI),也就是说,Navicat能够以安全和简便的方式进行创建,整理和存取。Navicat适用于以下三种系统:一是MacOS;二是MicrosoftWindows;三是Linux系统。2.4开发环境笔记本电脑类型:华硕飞行堡垒64位型笔记本电脑电脑操作系统:家庭版Windows10MySQL数据库版本:MySQL57Java版本:JDK1.8Java版本:JDK1.8服务器版本型号:apache.tomcat.8.5.37.windows.x643需求分析3.1系统功能分析本文通过结合如今招聘市场存在的不足以及求职招聘管理的需求搭建了更加信息化、系统化的线上求职招聘平台。该平台包含很多功能,能够实现用户、企业以及管理者对应的需求。本文接下来将会对几个模块分别进行相应的分析和研究。1.管理员/用户登录这部分模块主要是用户和管理者的登录,其实也就是求职者和招聘者的登录管理。包括添加管理者、用户登录、注册等内容。系统实现添加一般管理员和高级管理员的功能,同时也能够保证游客注册系统以及用户登录系统查询信息等功能[8]。2.招聘者管理模块:管理者能够通过系统看到企业的招聘列表,然后其能将公司的相关信息在该板块下进行管理。3.管理职位类别:系统能够显示各种职位类别。4.信息推送模块:管理员通过系统能够清楚地看到招聘信息的推送,且能通过关键字的方式查询相关推送。并对信息进行审核,若信息失效,则需要删除信息。5.留言板管理员拥有管理留言板的权限,主要是完成相关留言的更改操作,包括增加、删除等。6.用户操作:这部分是系统普通用户能够进行的基本操作,也是本文设计的系统最基本的功能,也就是实现基本的登录使用、信息查询、信息修改以及数据存储等功能。7.退出:这个模块主要是相关人员不使用系统时退出系统,包括用户、管理员等。网络人才招聘系统的设计主要有三大类:第一类为个人用户,第二类为企业用户,第三类为管理员用户,笔者将在下文中逐一描述这三个大类系统的脑图与思想架构。个人用户的功能简介见图3-1:图3-1个人用户图企业用户功能介绍如图3-2所示:如图3-2企业用户图管理员用户功能介绍如图3-3所示:图3-3管理员用户图3.2业务流程分析系统的业务流程如下图所示。图3-4系统业务流程图其中业务的关键流程:在前台账号的页面,以个人用户信息作为验证,途经服务器之中的数据库校验,如果何时用户信息中的账号密码正确,就可以对这个系统进行使用,而在后端账号界面输入管理员的个人信息,经由服务器之中的数据校验,能够对系统进行管理,管理系统等功能操作[9]。3.3需求分析3.3.1业务需求分析网上求职与招聘管理系统的发展从根本上改变了我们的求职与招聘模式,这与经济和科技的快速发展也是分不开的。与此同时,该系统主要是为了方便求职者和招聘者间的联系。解决求职和招聘过程中存在的不足,确保通过线上就能够完成招聘工作。首先,招聘单位通过系统发布招聘信息,并且维护招聘信息,求职者在通过系统找到符合自己需求的工作,提交相关的资料[10]。接下来企业在系统上安排的用户就会专门负责处理相关的内容,将应聘信息下载并挑选后,通知符合企业工作岗位的应聘者参加面试。在面试过程中,人力资源能够通过系统随时查看应聘者的简历。本文设计的网上求职与招聘系统的设计开发,主要是是基于Java技术的研究。该系统能够通过计算机技术实现招聘者和求职者的管理。确保整个过程能够实现网络化、信息化、高效化。这种线上求职招聘的方式与传统的线下方式相比,可以节约很多资源,同时也能够提高办事效率。此外,一旦这种系统开发完成并且投入使用后,能够通过大量的数据将整个系统做到更加细致化的管理,不仅有利于信息的查询,也能够带来很好的便捷性。3.3.2系统功能分析本文通过结合如今招聘市场存在的不足以及求职招聘管理的需求搭建了更加信息化、系统化的线上求职招聘平台。该平台包含很多功能,能够实现用户、企业以及管理者对应的需求。本文接下来将会对几个模块分别进行相应的分析和研究[11]。1.管理员/用户登录这部分模块主要是用户和管理者的登录,其实也就是求职者和招聘者的登录管理。包括添加管理者、用户登录、注册等内容。系统实现添加一般管理员和高级管理员的功能,同时也能够保证游客注册系统以及用户登录系统查询信息等功能。2.招聘者管理模块:管理者能够通过系统看到企业的招聘列表,然后其能将公司的相关信息在该板块下进行管理。3.管理职位类别:系统能够显示各种职位类别。4.信息推送模块:管理员通过系统能够清楚地看到招聘信息的推送,且能通过关键字的方式查询相关推送。并对信息进行审核,若信息失效,则需要删除信息[12]。5.留言板管理员拥有管理留言板的权限,主要是完成相关留言的更改操作,包括增加、删除等。6.用户操作:这部分是系统普通用户能够进行的基本操作,也是本文设计的系统最基本的功能,也就是实现基本的登录使用、信息查询、信息修改以及数据存储等功能。7.退出:这个模块主要是相关人员不使用系统时退出系统,包括用户、管理员等。3.3.3数据流图个人用户流程图如图3-5:图3-5个人数据流程图解析:个人用户需要先访问登录页面,拥有账号可直接登陆,如无账号可使用邮箱地址进行注册,进入系统后,需要填写填履历,可向公布招聘信息的公司投送简历,可对简历进行修改;运行结束后,单机退出登录按钮即可,将其账号信息安全撤除[13]。企业用户流程图见图3-6:图3-6企业数据流程图解析:企业用户与个人用户的注册登录过程一样,设有账号的可直接登陆,无账号的需邮箱注册登录;如果是企业用户,则需要登陆到服务器后才能进行操作。系统内可公布录用岗位,查看应聘者的简历,向应聘者下达面试通知;运行结束后,可通过单击退出登录按钮,安全退出。4系统设计4.1系统整体设计思想该系统的总体设计思想如下:第一,在Windows系统环境及B/S(浏览器/服务器)体系结构中进行开发;第二,后台开发主要使用Java语言,开发主要功能。第三,前台开发,使用HTML+CSS+JS技术。第四,数据使用MySQL数据库,完成语言建库、建表等系列操作。4.2系统体系架构网络招聘系统使用了三层架构这一技术,将整个系统分割开来,其优点可分两点:一方面,它能使整个程序的功能清晰化、结构清晰化,由此使得程序员在各个功能模块上的针对性都有了很大提高,增加发展的效益。另一方面,它还增加了系统后期可维护性(维护服务器是否高效)与可扩展性(后期可以增加功能)[14]。另外,在实现过程中还需要解决一些具体的细节,该系统三层架构划分见图4-1:图4-1三层架构表现层:基于jsp与servlet技术,借助servlet对个人用户与企业用户申请不同方式与对象,接收不同请求,利用业务逻辑功能,将数据发送到jsp病呈现给用户。逻辑层:实际上,业务逻辑层以service为主,它的作用是利用数据层所获取的信息,在功能模块图上实现了多种业务逻辑。数据层:从体系上看,数据持久层以dao为主,dao层利用JDBC技术对MySQL数据库进行数据链接与存取。三层中的关系是自上而下的,各层之间需相互依赖。4.3数据库表设计个人数据表设计如表4-1所示:表4-1个人表字段名数据类型长度约束描述idbigint20主键序号create_timedatetime0不为null创建时间update_timedatetime0不为null修改时间emailvarchar255不为null邮箱地址passwordvarchar16不为null密码head_picvarchar128不为null头像mobilevarchar11不为null手机号sexint11不为null性别usernamevarchar6不为null姓名contentlongtext0自我描述work_experiencevarchar10工作时长degreevarchar10学历所述个人表用于存储个人账号用户基本信息,用户在注册或登录时所录入数据的存储场所为个人表。其中ID字段是表中主键,主键不重复,不为空键,是每一个用户身份唯一的象征。该部分包含了所有的字段值和对应的属性。还有一些字段保存的信息为个人用户基本信息。企业数据表设计如表4-2所示:表4-2企业表字段名数据类型长度约束描述idbigint20主键序号create_timedatetime0不为null创建时间update_timedatetime0不为null修改时间financevarchar255不为null是否上市founder_namevarchar10不为null创始人founder_photovarchar128不为null创始人照片founder_positionvarchar11不为null职位introductionlongtext0不为null公司简介localevarchar255不为null公司地址namevarchar30公司名称product_contentlongtext0产品描述product_titlevarchar15职位名称scalevarchar255公司人数statevarchar30管理认证territoryvarchar255行业urlvarchar255官网网址valuevarchar50职位简介企业表旨在保存企业账号的用户信息(企业名称等)。在该表中,所有的字段值都可以从数据库中提取出来,并可根据需要进行修改和删除,因此它具有很高的实用价值。其中ID字段同时作为表中主键使用,主键不重复,不为空键,是每一个企业用户唯一的身份象征。4.4招聘智能预测模块数据处理是可视化分析的重要前提,在使用Python进行数据分析时,如果直接连接数据库,那么所需的模块将直接导入Python进行分析。但是,如果直接用于可视化分析,原始数据存在重复、缺乏、不完整、不一致和噪声等问题,可能会对后续分析结果产生重大影响。因此,利用Python的Pandas库将数据库中包含的数据纳入DataFrames中,进行数据清理和随后的可视化分析[15]。图4-2是数据预处理的流程图。图4-2数据预处理流程图以下是对招聘信息进行非结构文本进行数据分析,图4-3是文本分析流程图。图4-3文本数据分析流程图4.5招聘智能预测模块实现用户立足七大机器学习算法预测模型实现预估薪资的操作,如下是基于KNN算法进行举例。首先导入sklearn模块中的KNN类,再通过创建分类器对象调用其训练方法接收训练数据集及其样本标签,最终生成预测模型,KNN预测模型生成代码如图4-4所示:图4-4KNN预测模型图4-5呈现的内容是预测结果图,由图中信息能够明确,在上海python开发,应届毕业生能获得的薪资不高于1万元。图4-5KNN预测结果图逻辑回归预测模型生成代码如图4-6所示:图4-6逻辑回归预测模型朴素贝叶斯预测模型生成代码如图4-7所示:图4-7朴素贝叶斯预测模型随机森林预测模型生成代码如图4-8所示:图4-8随机森林预测模型决策树预测模型生成代码如图4-9所示:图4-9决策树预测模型支持向量机预测模型生成代码如图4-10所示:图4-10支持向量机预测模型神经网络预测模型生成代码如图4-11所示:图4-11神经网络预测模型用户可拟定城市、学历、工作经验、公司规模、职位来获得信息预测模型,图4-12呈现的内容就是预测结果在前端系统呈现的核心程序代码:图4-12后台生成薪资预测值5系统实现5.1登录模块登录模块,用户可借助文本框,输入登录信息,使用Servlet导入dao层,对其正确性进行判断,明确登录模式,跳过对应网页。系统所有功能均须以用户登陆成功为硬件前提,实现页面跳转,因此,本单元显得尤为重要。用户根据网页文本框提示,键入信箱、密码及验证码单击登陆,系统将对输入邮箱进行检索,密码与验证码是否正确以及是否为空白,若输入数据存在于用户表中,系统跳过相应界面图示,否则,将提示邮箱和密码有误,或验证码有误;如果没有这些提示就会提示注册成功。用户这个要重新输入合适的邮箱及密码,不然就会提示登陆不成功。登录模块主要代码为:publicResult<Boolean>loginForm(Stringemail,Stringpassword,Stringcpacha,HttpServletRequestrequest){if(StringUtil.isEmpty(email)){returnResult.error(CodeMsg.USER_EMAIL_EMPTY);}if(StringUtil.isEmpty(password)){returnResult.error(CodeMsg.USER_PASSWORD_EMPTY);}if(StringUtil.isEmpty(cpacha)){returnResult.error(CodeMsg.CPACHA_EMPTY);}//获取系统生成的验证码Stringcorrect_cpacha=(String)request.getSession().getAttribute("user_login");//验证验证码是否正确if(!cpacha.toUpperCase().equals(correct_cpacha.toUpperCase())){returnResult.error(CodeMsg.CPACHA_ERROR);}Useruser=userService.findByEmail(email);//判断该邮箱地址是否存在if(user==null){returnResult.error(CodeMsg.USER_EMAIL_NOT_EXIST);}//判断用户输入密码是否正确if(!password.equals(user.getPassword())){returnResult.error(CodeMsg.USER_PASSWORD_ERROR);}request.getSession().setAttribute(SessionConstant.SESSION_USER_LOGIN_KEY,user);returnResult.success(true);}登录界面如图5-1图5-1登录页面5.2注册模块使用者可到登记页面登记账号及密码,登记的资料必须按要求填写。登陆之后,系统将自动发送一个注册验证码,输入自己想要注册的帐号、密码以及所需的个人信息。当注册信息被填入时,系统将对所填入信息进行检测,以证明其合法性,当输入正确之后,系统会自动给提供一个安全登陆界面,该界面包括登陆入口、账户设置等多个模块。注册后,点击回传登陆,就可以用刚注册好的账号及密码登录到系统中。5.2.1注册模块的关键代码如下:publicResult<Boolean>registerForm(HttpServletRequestrequest,Useruser,Stringcpacha){//如果勾选目的为空if(user.getType()==null||user.getType()<0){returnResult.error(CodeMsg.USER_REGISTER_TYPE_EMPTY);}//如果邮箱地址为空if(StringUtil.isEmpty(user.getEmail())){returnResult.error(CodeMsg.USER_EMAIL_EMPTY);}//如果用户密码为空if(StringUtil.isEmpty(user.getPassword())){returnResult.error(CodeMsg.USER_PASSWORD_EMPTY);}//如果用户昵称为空if(StringUtil.isEmpty(user.getUsername())){returnResult.error(CodeMsg.USER_NAME_EMPTY);}//如果验证码为空if(StringUtil.isEmpty(cpacha)){returnResult.error(CodeMsg.CPACHA_EMPTY);}//用统一验证实体方法验证是否合法user.setMobile();//先随便设置一个,后面恢复CodeMsgvalidate=ValidateEntityUtil.validate(user);if(validate.getCode()!=CodeMsg.SUCCESS.getCode()){returnResult.error(validate);}user.setMobile(null);//恢复//如果用户没点发送邮件if(request.getSession().getAttribute("user_register")==null){returnResult.error(CodeMsg.SYSTEM_CPACHA_EMPTY);}Stringcorrect_cpacha=(String) request.getSession().getAttribute("user_register");//如果验证码不正确if(!correct_cpacha.toUpperCase().equals(cpacha.toUpperCase())){returnResult.error(CodeMsg.CPACHA_ERROR);}//检查邮箱和用户昵称是否有重复if(checkEmail(user,0l)){request.getSession().setAttribute("user_register",null);//邮箱输入新的一个,需要重新发验证码确定returnResult.error(CodeMsg.USER_EMAIL_ALREADY_EXIST);}if(checkUsername(user,0l)){returnResult.error(CodeMsg.USER_NAME_ALREADY_EXIST);}//上面审核都通过后,准备添加数据库if(userService.save(user)==null){returnResult.error(CodeMsg.USER_REGISTER_ERROR);}//把验证码权限销毁request.getSession().setAttribute("user_register",null);returnResult.success(true);}//检查有没有重复的emailpublicbooleancheckEmail(Useruser,Longid){UserfindByEmail=userService.findByEmail(user.getEmail());if(findByEmail==null)returnfalse;//没有重复if(findByEmail.getId().longValue()==id.longValue())returnfalse;//没有重复returntrue;//有重复}//检查有没有重复的usernamepublicbooleancheckUsername(Useruser,Longid){UserfindByUsername=userService.findByUsername(user.getUsername());if(findByUsername==null)returnfalse;//没有重复if(findByUsername.getId().longValue()==id.longValue())returnfalse;//没有重复returntrue;//有重复}}注册界面如图5-2:图5-2注册页面5.3简历管理模块个人用户可对简历进行撰写及修改,简历分基本信息模块、期望的工作模块、工作经历模块、项目经验模块和其他一些模块。本模块为用户必填项目,未填简历保存失败。代码实例:publicclassUserextendsBaseEntity{/****/privatestaticfinallongserialVersionUID=1L;privatestaticfinalintUSER_SEX_MAN=1;//性别男privatestaticfinalintUSER_SEX_WOMAN=2;//性别女privatestaticfinalintUSER_SEX_UNKONW=0;//性别未知privatestaticfinalStringDEFAULT_WORK_EXPERIENCE="应届毕业生";//默认工作经验privatestaticfinalStringDEFAULT_DEGREE="其他";//默认学历privatestaticfinalStringDEFAULT_HEAD_IMAGE="common/default_img.jpg";//默认用户头像@ValidateEntity(required=true,requiredMaxLength=true,requiredMinLength=true,minLength=1,maxLength=6,errorRequiredMsg="用户昵称不能为空!",errorMinLengthMsg="用户昵称长度需大于0!",errorMaxLengthMsg="用户昵称长度不能大于6!")@Column(name="username",nullable=false,length=6)privateStringusername;//用户昵称@ValidateEntity(required=true,requiredMaxLength=true,requiredMinLength=true,minLength=6,maxLength=16,errorRequiredMsg="用户密码不能为空!",errorMinLengthMsg="用户密码长度需大于5!",errorMaxLengthMsg="用户密码长度不能大于16!")@Column(name="Password",nullable=false,length=16)privateStringPassword;//用户昵称@ValidateEntity(required=true,errorRequiredMsg="用户邮箱地址不能为空!")@Column(name="Email",nullable=false)privateStringEmail;//用户邮箱地址@ValidateEntity(required=false)@Column(name="head_pic",length=128)privateStringheadPic=DEFAULT_HEAD_IMAGE;//用户头像@ValidateEntity(required=false)@Column(name="work_experience",length=10)privateStringworkExperience=DEFAULT_WORK_EXPERIENCE;//工作经验:默认是应届毕业生@ValidateEntity(required=false)@Column(name="degree",length=10)privateStringdegree=DEFAULT_DEGREE;//学历:默认是其他@ValidateEntity(required=false)@Column(name="sex",length=1)privateintsex=USER_SEX_UNKONW;//用户性别@ValidateEntity(required=true,requiredMaxLength=true,requiredMinLength=true,minLength=11,maxLength=11,errorMinLengthMsg="请输入手机号正确的11位长度!",errorMaxLengthMsg="请输入手机号正确的11位长度!")@Column(name="mobile",length=12)privateStringmobile;//用户手机号@ValidateEntity(required=false)@Column(name="type",length=1,nullable=false)privateLongtype;//用户类别:0:应聘者,1:招聘者@Lob@Basic(fetch=FetchType.LAZY)//类型为longtextprivateStringcontent;//自我描述基本信息模块如图5-3:图5-3简历基本信息模块5.4招聘者管理模块企业用户可随时查看有无申请人申请本企业公布的岗位,可浏览其所投简历,以确定是否有必要告知其进行面试。当通知面试时,系统会自动将简历和录用人员进行关联,并在通知面试之前提醒应聘者注意。告知面试结束后希望相应投简历的求职者,将获得该公司的面试消息。招聘者管理模块的关键代码如下:/***招聘者收到简历页面*@parammodel*@return*/@RequestMapping(value="/my_receive_resume",method=RequestMethod.GET)publicStringmy_receive_resume(Modelmodel,StringresumeState,HttpServletRequestrequest){Useruser=(User)request.getSession().getAttribute(SessionConstant.SESSION_USER_LOGIN_KEY);if(!StringUtil.isEmpty(resumeState)){//如果resumeState不为空CompanyfindCompanyByUserId=companyService.findByUserId(user.getId());List<Resume>findByCompanyIdAndState=resumeService.findByCompanyIdAndState(findCompanyByUserId.getId(),resumeState);model.addAttribute("ResumeList",findByCompanyIdAndState);model.addAttribute("EducationBackgroundList",educationBackgroundService.findAllEducationBackground());model.addAttribute("WorkExperienceList",workExperienceService.findAllWorkExperience());model.addAttribute("resumeTotal",resumeService.getPositionTotalByStateAndCompanyId(findCompanyByUserId.getId(),resumeState));model.addAttribute("resumeState",resumeState);}else{CompanyfindCompanyByUserId=companyService.findByUserId(user.getId());List<Resume>findByCompanyIdAndState=resumeService.findByCompanyIdAndState(findCompanyByUserId.getId(),"wait");model.addAttribute("ResumeList",findByCompanyIdAndState);model.addAttribute("EducationBackgroundList",educationBackgroundService.findAllEducationBackground());model.addAttribute("WorkExperienceList",workExperienceService.findAllWorkExperience());model.addAttribute("resumeTotal",resumeService.getPositionTotalByStateAndCompanyId(findCompanyByUserId.getId(),"wait"));}return"home/resume/my_receive_resume";}/***简历通知面试*@paramrequest*@return*/@RequestMapping(value="/interview",method=RequestMethod.POST)@ResponseBodypublicResult<Boolean>interview(HttpServletRequestrequest,@RequestParam(name="id",required=true)Longid){ResumefindByResumeId=resumeService.findByResumeId(id);findByResumeId.setState("effective");if(resumeService.save(findByResumeId)==null){returnResult.error(CodeMsg.RESUME_STATE_SAVE_ERROR);}returnResult.success(true);}通知面试如图5-4:图5-4通知面试图5.5退出登录模块运行结束时,用户可将鼠标光标置于右上角退出图标上,单击退出按钮,安全退出系统,单击完成退出按钮之后,系统会直接返回登录页面。本系统通过对各种不同类型的攻击手段及相应的防范策略,有效地阻止了各类攻击方式的实施,确保了用户在任何时候都能正常登陆,并实现了与其它网站的数据连接。杜绝他人利用其账号从事某些非法行为,保障用户信息安全,同时确保网络环境安全。详见图5-5:图5.5安全退出登录图6系统测试因为软件并非实物产品,它是一种无形的逻辑产品,因此,设计中会出现一些难以避免的错误。因此,需要检查编写的代码是否正确可用,检验系统的运行,发现可能出现的错误与BUG,及时进行调试修正错误。6.1测试方法通常来说,系统测试主要分为以下两种:一是静态测试;二是动态测试。静态测试是到写好的代码里检查并发现错误,该测试方式无须运行程序,但需要注意的是,该测试方法很难发现错误,并且工作量过大,且效率不高。动态测试和静态测试则相反,要求程序运行到电脑,运行时检测BUG及主要失误。动态测试寻找BUG,能直观地检测出错误,因此,目前多数程序员都在使用动态测试方法。而动态测试主要分为以下两种:第一,白盒测试;第二,黑盒测试。我们编写的系统使用了动态系统黑盒测试等价分割方法。6.2测试环境电脑型号:华硕飞行堡垒操作系统:Windows10家庭版数据库版本:MySQL57JDK版本:JDK1.8JDK版本:JDK1.8服务器版本:apache.tomcat.8.5.37.windows.x64浏览器版本:Google6.3测试结果该系统前台借助相关技术,判断用户所录入数据是否合理和合法。后台则需要利用这些信息来完成相应操作。例如:账号的邮箱限制、密码长度有限、单个选项的输入不可能是空的等。这些都可以作为一个独立的模块加入到后台数据库中去实现,从而使得整个系统具有一定的独立性和可扩展性。以下是几个等价类的划分及测试结果。用户注册信息测试中一些等价类的分割见表6-1:表6-1“个人用户注册”输入条件的等价类表输入条件有效等价类

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论