
《人才招聘网站的设计与实现---说明书解读》由会员分享,可在线阅读,更多相关《人才招聘网站的设计与实现---说明书解读(26页珍藏版)》请在文档大全上搜索。
1、*实践教学实践教学*兰州理工大学兰州理工大学计算机与通信学院2021 年秋季学期C+面向对象面向对象课程设计课程设计题目:人才招聘网站设计与实现专业班级:计算机1班 姓 名: 武小正 学 号: 10240122 指导教师: 年福忠 成 绩: 1目录摘要.2绪论.31.1 课题的背景.31.2 系统设计思想 .4需求分析.52.1 系统根本情况描述.52.2 系统流程图 . 6系统设计.73.1 系统功能模块设计 .73.2 调试分析.8总结与体会.10致谢.11参考文献.12附录 源程序.132摘摘 要要现今,由于社会对学术、技术要求的提高以及教育改革、高等学校年年扩招等原因,大学毕业生已经远
2、离了毕业“包分配、 “不愁嫁的日子。由此,找工作的方式在二十一世纪也发生着丰富的变化,相对于漫无目的的四处寻找用人单位和奋战于拥挤的各种大型招聘会,网络人才与招聘系统能提供最及时、最丰富的招聘信息。通过该题目的设计、开发,使学生初步得到数据库开发的训练,全面培养软件开发过程中的分析、设计、编码、测试及文档标准书写的能力,得到软件开发的综合训练,提高解决实际问的能力。关键字关键字:人才招聘;信息管理;系统分析。3绪论绪论1.11.1 课题背景课题背景人才招聘网站系统是用于招聘人员和业务管理的计算机信息系统,系统包括宏观决策和业务管理两个局部,效劳对象包括工作单位、招聘人员和其所担任的职务。人才招
3、聘网站系统服从于人员信息管理的总体规划,系统建设坚持一体化的设计思想,与就业效劳系统、医疗保险系统、失业保险系统等统一标准,协调建设。随着我国信息管理制度改革的进一步深入,特别一些大型企业和公司,业务量急剧增长,管理日趋完善。一些地区建立了计算机信息管理系统,对于深化改革、标准管理、提高业务工作效率等产生了积极的促进作用。目前已有相当一局部城市开始使用计算机进行前台业务处理,一些较兴旺的城市实现了全市联网。但由于各地的经济状况不同,系统建设的规模、水平差异也较大。系统建设面临的主要问题有:现有的信息系统已无法更好地满足业务处理和管理决策的更高要求;缺乏各个行业应有的标准和指导信息,有时候建设的
4、信息系统,不能更好及时的将一些最新信息展现给人才消费者,这从一定程度上造成硬件和系统软件的浪费,应用软件重复开发现象比拟普遍,网络互联困难;缺乏组织与人员保证,这种状况严重制约着各地信息系统建设和开展。随着每个企业公司体系中所包含的内容、层次、范围和目标日趋扩大和复杂化,工作量和数据处理量将呈现大幅度的增长趋势,公司管理部门所承当的管理工作变得越来越繁重,特别是实行个人帐户管理以后,不仅管理数据成倍增长,而且每笔数据都涉及到职工和单位的实际利益,不允许有半点过失。一个完善的系统或手工操作方式将实现新形式下的招聘工作目标,确保招聘工作的顺利进行和人员信息的管理。41.31.3 系统设计思想系统设
5、计思想人才招聘网站系统服从于公司和企业信息管理系统的总体规划,系统建设坚持一体化的设计思想,结合着国家政策和对息系统建设的规定进行实施。本系统按以下原那么进行:(1)实用性:人才招聘网站系统作为应用系统,以满信息管理工作的业务需求为首要目标,防止盲目追求最新技术。(2)可靠性:采用稳定可靠的成熟技术,保证系统长期平安运行。系统中的硬、软件及信息资源要满足可靠性设计要求。(3)先进性:在实用性的前提下,尽可能跟踪国内外先进的计算机硬软件技术、信息技术及网络通信技术,使系统具有较高的性能价格比。采用先进的体系结构和技术开展的主流产品,保证整个系统高效运行。(4)开放性:技术上立足于长远开展,坚持选
6、用开放性系统。(5)平安性:遵循有关信息平安标准,具有必要的平安保护和保密措施,以及对计算机犯罪和病毒的防范能力,确保数据永久平安。(6)可扩充性:应充分考虑到联网用户增加和业务扩展的情况,留有必要的扩充能力及接口。(7)可维护性:应用软件开发的模块化程度高,对不同的管理方式的适应能力强,软件维护方便。(8)易操作性:贯彻面向最终用户的原那么,建立友好的用户界面,操作简单,直观灵活,易于学习掌握。在人才招聘网站系统中,数据库无疑是其核心局部。由于该系统具有一定的复杂性,这就必然要求数据库在数据的提交、管理等方面能够充分满足实际业务的处理需求,因此对数据库的选择提出了以下严格的要求:(1)可靠性
7、。在保障可用性根底上,考虑到系统运行的环境比拟复杂,处理量巨大,所以必须保证系统核心数据库的稳定、可靠、平安运行,以提高整个系统的抗干扰能力。(2)平安性:对于不宜公开的信息,必须能够通过数据库设定平安等级和查阅权限,并在数据库中对重要数据进行加密存储,以保证数据的平安性。而且数据库还必须提供方便的数据备份功能。以减轻系统维护人员的工作量。5需求分析需求分析2.12.1 系统根本情况描述系统根本情况描述人才招聘网站系统是以招聘单位的业务为背景,通过调研、分析现有的管理模式和已有的管理软件,建立系统模型,以实际为根底进行设计的。该系统属于 B/S 结构,B/S 结构的主要特点是分布性强、维护方便
8、、开发简单且共享性强、总体拥有本钱低。用户通过浏览器向分布在网络上的许多效劳器发出请求,效劳器对浏览器的请求进行处理,将用户所需信息返回到浏览器。数据请求、加工、结果返回以及动态网页生成、对数据库的访问和应用程序的执行等工作全部由 Web Server 完成。该系统包括六大模块:招聘者档案管理、招聘职位管理、信息查询、报表统计和打印、系统维护。62.22.2 系统流程图系统流程图系统流程图是用图形的方式表现出招聘者和企业公司相互了解时的业务处理流程,具体图示如下系统流程图。简历管理问卷管理首页职位发布面试管理知识库管理用户管理试题列表试题详细信息删除列表修改列表增加试题预览试题职位发布职位列表
9、职位详细信息停止招聘修改职位增加职位删除职位简历管理职位列表应聘者列表应聘者申请表查询职位查看试卷答案回复信息打印简历面试管理职位列表应聘者列表未发通知面试完成等待面试应聘者申请表查看试卷答案题库管理题目列表题目详细信息删除试题增加试题查询试题增加答案删除答案价值取向问卷工作取向问卷用户管理用户列表用户信息增加用户修改用户信息删除用户7系统设计系统设计3.13.1 系统功能模块设计系统功能模块设计系统功能:1.新闻系统:添加、修改、删除文章、文章置顶、Flash 文章系统。2.投票系统:添加、修改、删除投票。3.求职系统:个人会员注册后可以修改自己的根本资料、添加、修改、删除、管理求职信息信息
10、、投递简历、收藏企业、接收企业的招聘信息等。4.招聘系统:企业注册后可修改根本资料、添加、修改、删除、管理企业招聘信息、接收个人的求职简历、收藏个人信息、财务明细、点卡充值、发布管理猎头信息等。5.广告系统:支持矩形横幅 、弹出窗口 、随屏移动、固定位置、漂浮移动、文字代码,同时支持 JPG、SWF、GIF、文本、代码和页面,并自动生成 JS 代码文件。6.后台系统:管理企业、个人的求职招聘信息、根本资料信息、新闻系统、投票系统、友情链接管理、数据库管理等7.管理员功能:1、系统设置:根本信息设置,经营信息设置,地区设置,行业设置,企业套餐4、界面设置:选择模板,当前模板库管理,数据调用。设置
11、,企业审核设置,首页幻灯管理,友情连接管理,平安管理。2、数据管理:求职者管理,企业管理,职位管理,广告管理。3、资讯管理:资讯类型管理,资讯管理。5、系统管理:管理员管理,静态页面从新生成,修改密码。83.23.2 调试分析调试分析1.招聘系统登录界面 2.会员信息管理93.在线求职招聘信息4.信息验证10总结与体会总结与体会在这次的课程设计过程中,我们学到的不仅是知识,我们还认识到许多事情。这次设计使我的编程水平提高了一大步,使我充分的认识到合作的可贵。由于这次设计主要涉及到数据结构中的链表结构,我们学到了学到了不少关于数据链表的知识,对链表的操作有了进一步的了解。这次设计对我的综合能力是
12、一次很好的锻炼,但是我必须成认自己的能力和知识还很浅薄。所以今后我的学习道路还是很漫长的。最后,在这里由于我们水平有限,加之时间短暂,故运动会分数统计系统中还有许多缺乏之处,请老师批评指正,我会在以后的制作中不断改良,不断完善。11致谢本人在此向所有关心我们的及帮助我们的老师和同学们致以最真诚的感谢。在本次毕业设计中,我从指导老师-张其文老师,身上学到了很多东西。他认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我收益匪浅。他无论在理论上还是在实践中,都给与我们很大的帮助,使我们得到很大的提高,这对于我们以后的工作和学习都有一种巨大的帮助,在此感谢她耐心的辅导。总之,我们有了这么一个时机
13、来检验我们自己的学习成果及学习能力。在赵老师的指点下,我们设计运动会分数统计系统的设计就清楚了很多,并最终顺利的设计好了。12参考文献参考文献1初小璐完全掌握 SQL Server 2000 M 机械工业出版社,20042Jeraod V.Post.数据库管理系统英文版.第三版美清华大学出版社,2006.13张海藩.软件工程导论M.北京:清华大学出版社,1998.14谢希仁.计算机网络第二版M.北京:电子工业出版社,2003.6 5戴志诚,赵国峰. .JSP 信息化系统建设案例M.北京:人民邮电出版社,2006.126成晓静,毕靖.网页设计三剑客完全学习手册M.北京:中国电力出版社,2004.
14、117赵强.精通 JSP 编程M.北京:电子工业出版社,2006.38萨师煊,王珊.数据库系统概论M.北京:高等教育出版社,2002.29张海藩,李劲,谢兆阳.SQL Server2000 数据库设计与系统管理M.北京:清华大学出版社,2000.910刘禾,蔡锋.Web 数据库假设技巧M.北京:科技技术出版社,1999.411徐建波. Internet 与 Web 设计教程M.北京:中国矿业大学出版社,2000.1212于书举,许向众.数据库设计与开发教程M.北京:电子工业出版社,2003.1113安海忠,李文斌,林旭新.商业网站建设与管理M.北京:人民交通出版社,2006.814T.Umed
15、a and S.Hagiwara.web-based database for EPR centers in semiconductorsJ.BPhysica B:Condensed Matter,3(7),249-252,2006.315Yih-Ling Hedley,Muhammad Younas.Sampling,information extraction and summarisation of Hidden Web databasesJ.Data & Knowledge Engineering,In Press,Uncorrected Proof,Available onl
16、ine 10 March 2006.213源程序源程序#include #include #include #include #include using namespace std;public class DBConnect private Statement stmt=null; private ResultSet rs=null; public DBConnect()tryClass.forName(com.microsoft.jdbc.sqlserver.SQLServerDriver); catch(java.lang.ClassNotFoundException e)System
17、.err.println(opendb():+e.getMessage(); public ArrayList executeQuery(SQLServerDataSource source,String strSql) throws SQLException Connection con=null; rs=null; ArrayList ArrayRs=new ArrayList(); try con=source.getConnection(); stmt=con.createStatement(); rs=stmt.executeQuery(strSql); ResultSetMetaD
18、ata rsmd=rs.getMetaData(); int numberOfColumns = rsmd.getColumnCount(); if(!ArrayRs.isEmpty() ArrayRs.clear(); while(rs.next() ArrayList arrlist1=new ArrayList(); for(int j=1;j0) con mit(); else con.rollback(); catch(Exception e) System.out.println(update error:+e.getMessage(); finally if (stmt != n
19、ull) stmt.close(); if (con != null&!con.isClosed() con.close(); return j; public int executeDelete(SQLServerDataSource source,String strSql) throws SQLExceptionConnection con=null; rs=null;int j=0; try con=source.getConnection(); stmt=con.createStatement(); con.setAutoCommit(false); j=stmt.execu
20、teUpdate(strSql); if(j0) con mit(); con.rollback(); catch(Exception e) System.out.println(Delete error:+e.getMessage();16 finally if (stmt != null) stmt.close(); if (con != null&!con.isClosed() con.close(); return j; import org.apache.struts.action.ActionErrors;import org.apache.struts.action.Ac
21、tionForm;import org.apache.struts.action.ActionMapping;public class SubmitAnswerForm extends ActionForm / - Instance Variables/* 职位名称 */private String JobName;/* 职位发布日期 */private String PubDate;/* 职位发布结束日期 */private String EndDate;/* 职位描述 */private String Description;/* 职位要求 */private String Require
22、ments;/* 招聘人数 */private int JobNum;/ - Methodspublic ActionErrors validate(ActionMapping mapping,HttpServletRequest request) 。public void reset(ActionMapping mapping, HttpServletRequest request) 。17public String getJobName() return JobName;/* * 赋值 JobName. * */public void setJobName(String JobName)
23、this.JobName = JobName;/* * 返回 PubDate. * */public String getPubDate() return PubDate;/* * 赋值 PubDate. * */public void setPubDate(String PubDate) this.PubDate = PubDate;/* * 返回 EndDate. * */public String getEndDate() return EndDate;/* * 赋值 EndDate. * */public void setPubDate(String EndDate) this.End
24、Date = EndDate;18public String getDescription() return Description;/* * 赋值 Description. * */public void setDescription(String Description) this.Description = Description;/* * 返回 Requirements. * */public String getRequirements() return Requirements;/* * 赋值 Requirements. * */public void setRequirement
25、s(String Requirements) this.Requirements = Requirements;/* * 返回 JobNum. * */public int getJobNum() return JobNum;/* * 赋值 JobNum.public void setJobNum(int JobNum) 19this.JobNum = JobNum;public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request,HttpServletResponse
26、response) / 获取新增加的职位信息DynaActionForm AddJobForm = (DynaActionForm) form;String JobName = (String) AddJobForm.get(JobName);String PubDate = (String) AddJobForm.get(PubDate);String EndDate = (String) AddJobForm.get(EndDate);String Description = (String) AddJobForm.get(Description);String Requirements
27、= (String) AddJobForm.get(Requirements);Integer JobNum=(Integer)AddJobForm.get(JobNum);HttpSession session = request.getSession();Vector JobList = new Vector();ServletContext context = servlet.getServletContext();DataSource dataSource = (DataSource) context.getAttribute(Constants.DATASOURCE_KEY);DB
28、db = new DB(dataSource);/ 将职位根本信息封装到职工类型的对象try Job job = new Job();job.setJobName(JobName);job.setPubDate(PubDate);job.setEndDate(EndDate);job.setDescription(Description);job.setRequirements(Requirements);job.setJobNum(JobNum.intValue();/ 将增加的职位信息参加到对应的数据库if (job.addJob(db,JobName,PubDate,EndDate,De
29、scription,Requirements,JobNum.intValue()db.close(); catch (Exception e) e.printStackTrace();return (mapping.findForward(toaddjob);20public class Job / 与职位信息相关的根本属性和方法public int JobID;public int JobNum;public String JobName;public String PubDate;public String EndDate;public String Description;public
30、String Requirements;public Job() public String getDescription() return Description;public void setDescription(String Description) this.Description = Description;public String getEndDate() return EndDate;public void setEndDate(String EndDate) this.EndDate = EndDate;public int getJobID() return JobID;
31、public void setJobID(int JobID) this.JobID = JobID;public String getJobName() return JobName;public void setJobName(String JobName) this.JobName = JobName;/ 职位招聘人数public int getJobNum() 21return JobNum;public void setJobNum(int JobNum) this.JobNum = JobNum;/ 职位发布日期public String getPubDate() return P
32、ubDate;public void setPubDate(String PubDate) this.PubDate = PubDate;/ 职位要求属性public String getRequirements() return Requirements;public void setRequirements(String Requirements) this.Requirements = Requirements;public static Vector jobSearch(DB db, String JobName, String PubDate, String EndDate) thr
33、ows Exception Vector JobList = new Vector();ResultSet rs;String strSql = null;strSql = select * from JobList where JobName like % + JobName + %+ and PubDate like % + PubDate + %+ and EndDate like % + EndDate + %;rs = db.OpenSql(strSql);while (rs.next() Job job = new Job();job.setJobID(rs.getInt(JobI
34、D);job.setJobName(rs.getString(JobName);job.setPubDate(rs.getString(PubDate);job.setEndDate(rs.getString(EndDate);job.setDescription(rs.getString(Description);job.setRequirements(rs.getString(Requirements);job.setJobNum(rs.getInt(JobNum);22JobList.add(job);System.out.println(nnnnnnnnnn,+rs.getString
35、(JobName);return JobList;public static Vector getJobList(DB db)throws ExceptionVector JobList=new Vector();ResultSet rs;String strSql=null;strSql=select * from JobList order by JobID;rs=db.OpenSql(strSql);while(rs.next()Job job=new Job();job.setJobID(rs.getInt(JobID);job.setJobName(rs.getString(JobN
36、ame);job.setPubDate(rs.getString(PubDate);job.setEndDate(rs.getString(EndDate);job.setJobNum(rs.getInt(JobNum);JobList.add(job);return JobList;public Vector getJobDetail(DB db,int JobID) throws Exception ResultSet rs;String strSql = null;strSql =select * from JobList where JobID=+JobID;rs = db.OpenS
37、ql(strSql);Vector JobList=new Vector();if (rs.next() Job job = new Job();job.setJobID(rs.getInt(JobID);job.setJobName(rs.getString(JobName);System.out.println(JobID+rs.getString(JobID);job.setPubDate(rs.getString(PubDate);job.setEndDate(rs.getString(EndDate);23job.setDescription(rs.getString(Descrip
38、tion);job.setRequirements(rs.getString(Requirements);job.setJobNum(rs.getInt(JobNum);JobList.add(job);return JobList; public boolean addJob(DB db,String JobName,String PubDate,String EndDate,String Description,String Requirements,int JobNum) throws Exception String strSql = null;ResultSet rs;int Job
39、IDMax;strSql=select max(JobID) from JobList;rs=db.OpenSql(strSql);if(rs.next()JobIDMax=rs.getInt(1)+1;elseJobIDMax=1;strSql = insert into JobList values( + JobName + , + PubDate+ , + EndDate + , + Description + , + Requirements+,+JobNum+ );if (db.ExecSql(strSql) = 0) return false; else return true;p
40、ublic boolean modifyJob(DB db,int JobID,String JobName,String PubDate, String EndDate,String Description,String Requirements, int JobNum) throws Exception System.out.print(lokkeewwwww);String strSql = null;strSql = update JobList set JobName=+JobName+,+PubDate=+PubDate+,+EndDate=+EndDate+,+Descripti
41、on=+Description+,+Requirements=+Requirements+,24+JobNum=+JobNum+ where JobID=+JobID;System.out.print(JobID+JobID);if (db.ExecSql(strSql) = 0) return false; else return true;public boolean DeleteJob(DB db,int JobID) throws Exception String strSql = null;strSql = delete from JobList where JobID=+JobID
42、;if (db.ExecSql(strSql) = 0) return false; else return true; public final class ValidateSessionTag extends TagSupport private String name = username; private String page = /login.jsp; private Log log =LogFactory.getLog(this.getClass().getName(); public int doEndTag() throws JspException boolean vali
43、d = false;HttpSession session = pageContext.getSession();/判断 session 中是否有用户信息存在if (session != null) & (session.getAttribute(name) != null) valid = true;if (valid) return (EVAL_PAGE);/如果用户存在那么不做任何处理else try pageContext.forward(page); /用户不存在那么跳转到指定的页面 catch (Exception e) throw new JspException(e.t
44、oString(); return (SKIP_PAGE);/执行跳转25 public int doStartTag() throws JspException return (SKIP_BODY); public String getName() return (this.name); public String getPage() return (this.page); public void release() super.release(); this.name = username; this.page = /login.jsp; public void setName(String name) this.name = name; public void setPage(String page) this.page = page;return 0;