版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
*****************x*
实践教学
“,4,fclf
*7»*1**j、.j»*3**,**•»*5**5、,j»«、*1*,芦
兰州理工大学
计算机与通信学院
2023年秋季学期
C++面向对象课程设计
题目:人才招聘网站设计与实现
专业班级:计算机(1)班
姓名:
学号:
指导教师:
成绩:__________________
目录
摘要2
绪论3
1.1课题的背景3
1.2系统设计思想4
需求分析5
2.1系统基本状况描述5
2.2系统流程图6
系统设计7
3.1系统功能模块设计7
3.2调试分析8
总结与体会10
道谢11
参照文献12
附录源程序13
摘要
现今,由于社会对学术、技术规定的提高以及教育改革、高等学校年年扩招
等原因,大学毕业生已经远离了毕业“包分派”、“不愁嫁”的日子。由此,找
工作的方式在二十一世纪也发生着丰富的变化,相对于漫无目的的到处寻找用人
单位和奋战于拥挤的多种大型招聘会,网络人才与招聘系统能提供最及时、最丰
富H勺招聘信息。
通过该题目H勺设计、开发,使学生初步得到数据库开发的训练,全面培养软
件开发过程中的分析、设计、编码、测试及文档规范书写的能力,得到软件开发
的综合训练,提高处理实际问的能力。
关键字:人才招聘;信息管理;系统分析。
绪论
1.1课题背景
人才招聘网站系统是用于招聘人员和业务管理的计算机信息系统,系统包括
宏观决策和业务管理两个部分,服务对象包括工作单位、招聘人员和其所担任的
职务。人才招聘网站系统服从于人员信息管理的)总体规划,系统建设坚持一体化
的设计思想,与就业服务系统、医疗保险系统、失业保险系统等统一原则,协调
建设。
伴随我国信息管理制度改革的深入深入,尤其某些大型企业和企业,'业务量
急剧增长,管理日趋完善。某些地区建立了计算机信息管理系统,对于深化改革、
规范管理、提高业务工作效率等产生了积极口勺增进作用。目前已经有相称一部分
都市开始使用计算机进行前台业务处理,某些较发达的都市实现了全市联网。但
由于各地的经济状况不一样,系统建设的规模、水平差异也较大。系统建设面临
的重要问题有:既有的信息系统已无法更好地满足业务处理和管理决策的更高规
定;缺乏各个行业应有的原则和指导信息,有时候建设的信息系统,不能更好及
时口勺将某些最新信息展现给人才消费者,这从一定程度上导致硬件和系统软件的
挥霍,应用软件反复开发现象比较普遍,网络互联困难;缺乏组织与人员保证,
这种状况严重制约着各地信息系统建设和发展。
伴随每个企业企业体系中所包括的内容、层次、范围和目的日趋扩大和复杂
化,工作量和数据处理量将展现大幅度口勺增长趋势,企业管理部门所承担的管理
工作变得越来越繁重,尤其是实行个人帐户管理后来,不仅管理数据成倍增长,
并且每笔数据都波及到职工和单位的实际利益,不容许有半点差错。一种完善的
系统或手工操作方式将实现新形式下日勺招聘工作且的,保证招聘工作的顺利进行
和人员信息日勺管理。
1.3系统设计思想
人才招聘网站系统服从于企业和企业信息管理系统的总体规划,系统建设坚
持一体化的设计思想,结合着国家政策和对息系统建设的规定进行实行。本系统
按如下原则进行:
(D实用性:人才招聘网站系统作为应用系统,以满信息管理工作的业务需求为
首要目的,防止盲目追求最新技术。
(2)可靠性:采用稳定可靠的成熟技术,保证系统长期安全运行。系统中的硬、
软件及信息资源要满足可靠性设计规定。
(3)先进性:在实用性的前提下,尽量跟踪国内外先进的计算机硬软件技术、信
息技术及网络通信技术,使系统具有较高的性能价格比。采用先进的体系构造和
技术发展的主流产品,保证整个系统高效运行。
⑷开放性:技术上立足于长远发展,坚持选用开放性系统。
(5)安全性:遵照有关信息安全原则,具有必要的安全保护利保密措施,以及对
计算机犯罪和病毒的防备能力,保证数据永久安全。
(6)可扩充性:应充足考虑到联网顾客增长和业务扩展的状况,留有必要口勺扩充
能力及接口。
(7)可维护性:应用软件开发的模块化程度高,对不一样口勺管理方式的适应能力
强,软件维护以便。
⑻易操作性:贯彻面向最终顾客的原则,建立友好的顾客界面,操作简朴,直
观灵活,易于学习掌握。
在人才招聘网站系统中,数据库无疑是其关键部分。由于该系统具有一定的
复杂性,这就必然规定数据库在数据的提交、管理等方面可以充足满足实际业务
的处理需求,因此对数据库日勺选择提出了下列严格的规定:
(1)可靠性。在保隙可用性基础上,考虑到系统运行的环境比较复杂,处理
量巨大,因此必须保证系统关键数据库时稳定、可靠、安全运行,以提高整个系
统日勺抗干扰能力。
(2)安全性:对于不适宜公开的信息,必须可以通过数据库设定安全等级和
查阅权限,并在数据库中对重要数据进行加密存储,以保证数据口勺安全性。并且
数据库还必须提供以便的数据备份功能。以减轻系统维护人员的工作量。
需求分析
2.1系统基本状况描述
人才招聘网站系统是以招聘单位的业务为背景,通过调研、分析既有的管理
模式和已经有的管理软件,建立系统模型,以实际为基础进行设计的。该系统属
于B/S构造,B/S构造的重要特点是分布性强、维护以便、开发简朴且共享性强、
总体拥有成本低。顾客通过浏览器向分布在网络上的许多服务器发出祈求,服务
器对浏览器日勺祈求进行处理,将顾客所需信息返回到浏览器。数据祈求、加工、
成果返回以及动态网页生成、对数据库的访问和应用程序的执行等工作所有由
WebServer完毕。该系统包括六大模块:招聘者档案管理、招聘职位管理、信
息查询、报表记录和打印、系统维护。
2.2系统流程图
系统流程图是用图形日勺方式体现出招聘者和企业企.业互相理解时日勺业务处
理流程,详细图示如下
系统流程图。
系统设计
3.1系统功能模块设计
系统功能:
1.新闻系统:添加、修改、删除文章、文章置顶、Flash文章系统。
2.投票系统:添加、修改、删除投票。
3.求职系统:个人会员注册后可以修改自己的基本资料、添加、修改、删除、
管理求职信息信息、投递简历、收藏企业、接受企业的招聘信息等。
4.招聘系统:企业注册后可修改基本资料、添加、修改、删除、管理企业招
聘信息、接受个人的求职简历、收藏个人信息、财务明细、点卡充值、公布
管理猎头信息等。
5.广告系统:支持矩形横幅、弹出窗口、随屏移动、固定位置、漂浮移动、
文字代码,同步支持JPG、SWF、GTF、文本、代码和页面,并自动生成JS代
码文献。
6.后台系统:管理企业、个人的求职(招聘)信息、基本资料信息、新闻系
统、投票系统、友谊链接管理、数据库管理等……
7.管理员功能:
1、)系统设置:基本信息设置,经营信息设置,地区设置,行业设置,企业
套餐
4、)界面设置:选择模板,目前模板库管理,数据调用。设置,企业审核设
置,首页幻灯管理,友谊连接管理,安全管理。
2、)数据管理:求职者管理,企业管理,职位管理,广告管理°
3、)资讯管理:资讯类型管理,资讯管理。
5、)系统管理:管理员管理,静态页面从新生成,修改密码。
3.2调试分析
1.招聘系统登录界面
的,FCC语言\C语言实例\as\Debug\as.exe,
用
员登
会
录
密
敢
L个
茴
anykeytocontinue
2.会员信息管理
3.在线求职招聘信息
-=<'"F:\C语言\C语言实例\r\Debug\r.ex/日日
1.信息浏览
2.信息查询
3.个人发布求职信息
4.企业发布招聘信息
5.查看自己发布的信息
Pressanykeytocontinue.
搜狗拼音半:___________________________________________________________________________
4.信息验证
总结与体会
在这次的课程设计过程中,我们学到的不仅是知识,我们还认识到许多事情。
这次设计使我的编程水平提高了一大步,使我充足的认识到合作的可贵。
由于这次设计重要波及到数据构造中的链表构造,我们学到了学到了不少有
关数据链表日勺知识,对链表H勺操作有了深入日勺理解。这次设计对我日勺综合能力是
一次很好的锻炼,不过我必须承认自己的能力和知识还很肤浅。因此此后我的学
习道路还是很漫长的。
最终,在这里由于我们水平有限,加之时间短暂,故运动会分数记录系统中
尚有许多局限性之处,请老师批评指正,我会在后米口勺制作中不停改善,不停完
善。
道谢
本人在此向所有关怀我们日勺及协助我们的老师和同学们致以最真诚口勺感
谢。在本次毕业设计中,我从指导老师张其文老师,身上学到了诸多东
西。他认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我收益匪浅。
他无论在理论上还是在实践中,都给与我们很大的协助,使我们得到很大日勺提高,
这对于我们后来的工作和学习均有一种巨大的协助,在此感谢她耐心口勺辅导。
总之,我们有了这样一种机会来检查我们自己的学习成果及学习能力,在
赵老师的指点下,我们设计运动会分数记录系统的设计就清晰了诸多,并最终顺
利的设计好了。
参照文献
[1]初小璐.完全掌握SQLServer2023[M]机械工业出版社,2023
[2]JeraodV.Post.数据库管理系统(英文版.第三版)[美]清华大学出版
社,2023.1
[3]张海藩.软件工程导论[M].北京:清华大学出版社,1998.1
[4]谢希仁.计算机网络(第二版)M.北京:电子工业出版社,2023.6
⑸戴志诚,赵国峰.JSP信息化系统建设案例[M].北京:人民邮电出版
社,2023.12
⑹成晓静,毕靖.网页设计三剑客完全学习手册[M].北京:中国电力出版
社,2023.11
[7]赵强.精通JSP编程[M].北京:电子工业出版社,2023.3
[8]萨师煨,王珊.数据库系统概论[M].北京:高等教育出版社,2023.2
「91张海藩,李劲,谢兆阳.SOLServer2023数据库设计与系统管理.「Ml.北京:清华
大学出版社,2023.9
口0]刘禾,蔡锋.Web数据库假设技巧[M].北京:科技技术出版社,1999.4
[11]徐建波.Internet与Web设计教程[M].北京:中国矿业大学出版社,2023.12
[12]于书举,许向众.数据库设计与开发教程M.北京:电子工业出版社,2023.11
[13]安海忠,李文斌,林旭新.商业网站建设与管理[M].北京:人民交通出版
社,2023.8
[14]T.UmedaanddatabaseforEPRcentersinsemiconductors[J].BPhysica
B:CondensedMatter,3(7),249-252,2023.3
[15]Yih-LingHedley,MuhammadYounas.Sampling,informationextractionand
summarisationofHiddenWebdatabases[J].Data&KnowledgeEngineering,In
Press,UncorrectcdProof,Availableonline10March2023.2
源程序
#includc<iostream>
#include<string>
#include<iomanip>
#include<fstream>
#include<cstdlib>
usingnamespacestd;
publicclassDBConnect{
privateStatementstmt=null;
privateResultSetrs=null;
publicDBConnect(){
try
{
Class.fbrName(("coni.microsoft.jdbc.sqlsen'er.SQLSer\?erDriver"));
}catch(java.lang.ClassNotFoundExceptione){
System.eiT.println("opendb():"+e.getMessage());
)
I
publicArrayListexecuteQuery(SQLServeiDataSourcesource,StringstrSql)throws
SQLException{
Connectioncon=null;
rs=null;
ArrayListArrayRs=ncwArrayList();
try{
con=source.getConnection();
stmt=con.crcatcStatenicnt();
rs=stmt.executeQuery(strSql);
ResultSetMetaDatarsmd=rs.getMetaData();
intnumberOfColumns=rsnid.getColumnCount();
if(!ArrayRs.isEnipty())
ArrayRs.clearO:
)
while(rs.next()){
ArrayListanlistl=newArrayListO;
for(intj=l;j<=numberOfColumns;j++){
Strings=rs.getString(j);
if(s==null){
s=
I
arrlistl.add(s);
)
ArrayRs.add(arrlistl);
)
}catch(Exceptione){
System.out.println("queryerror:"+e.getMessage());
}finally{
if(stmt!=null){
stmt.close();
I
if(con!=null&&!con.isClosed()){
con.close();
)
)
returnArrayRs;
I
publicbooleanexeculeInsert(SQLServerDataSourcesource,Strings(rSql)throws
SQLException{
Connectioncon=null;
rs=null:
try{
con=sourcc.gctConncction();
stmt=con.cieateStatement();
con.setAutoCominit(truc);
inti=stmt.exscuteUpdate(strSql);
if(i==l){
return(true);
)
}catch(Exceptione){
Systeni.out.println("Inserterror:"+e.getMessage());
}finally(
if(stmt!=null){
stmt.closeO;
)
if(con!=null&&!con.isClosed()){
con.close();
return(false);
publicintcxccutcUpdatc(SQLScrvcrDataSourccsource,StringstrSql)throws
SQLException{
Connectioncon=null;
rs=null;
intj=O;
try{
con=source.getConnection();
stmt=con.cieateStatenient();
con.setAutoCommit(false);
j=stmt.executeUpdate(strSql);
conniit();
}else(
con.rollback();
I
}catch(Exceptione){
System.out.println("updateerror:"+e.getMessage());
}finally(
if(stmt!=null){
stmt.closc();
if(con!=null&&!con.isClosed()){
con.close();
)
)
returnj;
publicintexecuteDelete(SQLServerDataSourcesource,StringstrSql)throws
SQLException{
Connectioncon=null;
rs=null;
intj=O:
try{
con=source.getConnection();
stmt=con.createStatenient();
con.setAutoCommit(false);
j=stmt.executeUpda(e(strSql);
if(jX))(
con
con.rollback();
)
}catch(Exccptione){
Systcm.out.println("Dcletcerror:"+e.getMessage());
}finally{
if(stmt!=null){
stmt.close();
)
if(con!=null&&!con.isClosed()){
con.close();
I
)
returnj;
)
importoig.apache.struts.action.ActionErrors;
importoig.apache.struts.action.ActionForni;
importorg.apache.struts.action.ActionMapping;
publicclassSubmitAnswerForniextendsActionForm{
//InstanceVariables
/**职位名称*/
privateStringJobName;
/**职位公布日期*/
privateStringPubDate;
/**职位公布结束日期*/
privateStringEndDate;
/**职位描述*/
privateStringDescription:
职位规定*/
privateStringRequirements;
/**招聘人数*/
privateintJobNum;
//Methods
publicActionErrorsvalidate(
ActionMappingmapping,
HttpServletRequestrequest)
publicvoidresct(ActicnMappingmapping,HttpServletRequestrequest)
)
publicStringgetJobName(){
returnJobName;
)
*赋值JobName.
*
*/
publicvoidsetJobName(StringJobName){
this.JobName=JobName;
I
*返回PubDate.
*/
publicStringgctPubDatc(){
returnPubDate;
*赋值PubDate.
*/
publicvoidsetPubDate(S(ringPubDale){
this.PubDate=PubDale;
)
*返回EndDatc.
*
*/
publicStringgctEndDatc(){
returnEndDatc;
*赋值EndDate.
*/
publicvoidsetPubDate(StringEndDate){
this.EndDatc=EndDatc;
publicStringgetDescr:ption(){
returnDescription;
*赋值Descriplion.
*/
publicvoidsetDescripiion(StringDescription){
this.Description=Description;
)
*返回Requirements.
*
publicStringgctRcquircmcnts(){
returnRequirements;
赋值Requirements.
*/
publicvoidse(Requirements(StringRequirements){
this.Requirements=Requirements;
)
*返回JobNum.
*/
publicinigetJobNumO{
returnJobNum;
)
*赋值JobNum.
publicvoidsetJobNum(intJobNuni){
this.JobNum=Jo?Num;
publicActionForwardcxccutc(
ActionMappingmapping,
ActionFonnform,
HttpSei-vletRcquestrequest,
HttpServletResponseresponse){
//获取新增长的职位信息
DynaActionForniAddJobForm=(DynaActionFonn)form;
StringJobName=(String)AddJobborm.getC'JobName");
StringPubDate=(String)AddJobForni.get(,,PubDate,');
StringEndDate=(String)AddJobForm.get("EndDate");
StringDescription=(String)AddJobFonn.get("Description");
StringRequirements=(String)AddJobForm.getC'Requirements"):
IntegerJobNum=(Integer)AddJobForm.get("JobNum");
HttpSessionsession=request.getSession();
VectorJobList=newVector();
ServletContextcontext=servlet.ge(Sen-letContext();
DataSourcedataSource=(DataSource)context
.getAttribute(Constants.DATASOURCE_KEY);
DBdb=newDBidataSource);
//将职位基本信息封装到员工类型的对象
Jobjob=newJob();
job.setJobName(JobName);
job.setPubDatc(PubDate);
job.setEndDate(EndDate);
job.setDescription(Description);
job.setRequirements(Requirements);
job.setJobNum(JobNValue());
//将增长的职位信息加入到对应的数据库
if
(job.addJob(db.JobName,PubDate.EndDate.Description.Requirements.JobNValue())){
db.close();}
}catch(Exceptione){
e.prin(StackTrace();
return(mapping.findForward("toaddjob"));
}
publicclassJob{
//与职位信息有关的基本属性和措施
publicintJoblD;
publicintJobNum;
publicStringJobName;
publicStringPubDate;
publicStringEndDate:
publicStringDescription;
publicStringRequirements;
publicJob(){}
publicStringgetDescription(){
retumDescription;
I
publicvoidsctDcscription(StringDescription){
this.Description=Description;
)
publicStringgctEndDatc(){
returnEndDate;
publicvoidsctEndDatc(StringEndDatc){
this.EndDatc=EndDatc;
}
publicintgctJobID(){
returnJoblD;
}
publicvoidsetJobID(intJoblD){
this.JoblD=JoblD;
)
publicStringgetJobNanie(){
returnJobName;
)
publicvoidsetJobName(StringJobName){
this.JobName=JobName;
)
//职位招聘人数
publicintgctJobNum(>{
returnJobNum;
publicvoidsctJobNum(intJohNum){
thisJobNum=JooNum;
}
//职位公布日期
publicStringgelPubDate(){
returnPubDate;
I
publicvoidsetPubDate(StringPubDate){
this.PubDate=PubDate;
)
〃职位规定属性
publicStringgctRcquircmcnts(){
returnRequirements;
)
publicvoidse(Requirements(StringRequirements){
this.Requiremenb=Requirements;
)
publicstaticVectorjobSearch(DBdb.SiringJobName,
SiringPubDate,SiringEndDate)throwsException{
VectorJobList=newVcctor();
RcsultSctrs;
StringstrSql=null;
strSql="select*fromJobListwhereJobNamelike'%"+JobName+"%""
+"andPubDatelike%"+PubDate+"%""
+"andEndDatelike'%"+EndDate+"%"';
rs=db.OpenSql(strSql);
while(rs.nextO){
Jobjob=newJob();
job.setJobID(rs.getInt("JobID"));
job.setJobName(rs.getString("JobName"));
job.setPubDate(rs.getString("PubDate"));
job.setEndDate(rs.getString("EndDate,'));
job.setDescription(rs.getString("Description"i);
job.setRequirements(rs.getString(nRequirements"));
job.setJobNum(rs.getInt("JobNumn));
JobList.add(job);
Systeni.out.println("nnnnnnnnnn„„„,,,+rs.getString("JobNanie"));
returnJobList;
)
publicstaticVectorgeJobList(DBdb)throwsException!
VectorJobList=newVector();
ResultSetrs;
StringstrSql=null;
strSql="select*fromJobListorderbyJoblD";
rs=db.OpenSql(strSql);
whilc(rs.ncxt()){
Jobjob=newJob();
job.setJobID(rs.getInt("JobID"));
job.sctJobNamc(rs.gctString("JobName"));
job.sctPubDatc(rs.getString("PubDatc"));
job.sctEndDatc(rs.gctStnng("EndDate"));
job.sctJobNuni(rs.gctInt("JobNum"));
JobList.add(job);
returnJobList;
publicVectorgetJobDctail(DBdbJntJoblD)throwsException{
ResultSetrs;
StringstrSql=null;
strSql="select*fromJobListwhereJobID=n+JobID;
rs=db.OpenSql(strSql);
VectorJobList=newVector();
if(rs.next()){
Jobjob=newJob();
job.setJobID(rs.getInt("JobID"));
job.setJobName(rs.getString("JobNameM));
System.out.println("JobID"+rs.getSmng("JobID"));
job.setPubDate(rs.getString("PubDate"));
job.setEndDate(rs.getString("EndDate"));
job.setDescription(rs.getString("Description"i);
job.setRequirements(rs.getString("Requirements"));
job.sctJobNuni(rs.gctInt("JobNum"));
JobList.add(job);
returnJobList;
I
publicbooleanaddJob(DBdb,StringJobName,StringPubDate,StringEndDate,String
Description,StringRequirements,intJobNum)throwsException{
StringstrSql=null;
ResultSetrs;
intJoblDMax;
strSql="selectmax(JoblD)fromJobList1,;
rs=db.OpenSql(strSql);
if(rs.next()){
JobIDMax=rs.getInt(1)+1;
}else{
JobIDMax=l;
strSql="insertintoJobListvalucs("'+JobNamc++PubDatc
+二“'+EndDate++Description++Requirements
+",;"+JobNum
+
if(db.ExecSql(strSql)==0){
returnfalse;
}else{
returntrue;
)
1
publicbooleantnodifyJob(DBdb,intJobID,StringJobName,
StringPubDatc,StringEndDa
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 48163.5-2026半导体器件能量收集和产生半导体器件第5部分:测量柔性热电器件发电功率的测试方法
- 板栗、坚果初加工产业链项目可行性研究报告模板-立项拿地
- 2026年苏教版高中生物必修第一册第4章知识点巩固习题及答案
- 建筑工程施工组织与实施考试模拟试卷及答案
- 公共卫生执业医师考试卫生监督学模拟试题及答案
- 特种设备作业人员证锅炉司炉安全操作与维护试题及答案
- 江苏省苏州市第一中学九年级历史第5章模拟试卷及答案
- 物业管理师职业道德与素养测试卷及答案
- 北师大版数学 专题4.3 多边形和圆的初步认识(知识梳理+9个考点讲练+中考真题演练+难度分层练 共43题) 同步练习 含答案
- 年产3200吨农药中间体和年产2000吨聚氨酯胶粘剂项目可行性研究报告模板-立项备案
- 2026年烟花爆竹零售经营安全考试试题及答案
- 2026年国家林业和草原局直属单位招聘笔试练习题附答案
- 多囊卵巢综合征诊疗中国指南(2026 版)
- 广西能源集团有限公司招聘笔试题库2026
- 医院特种设备运行安全隐患大排查工作自查报告
- (2025)国际指南:压力性损伤溃疡预防和治疗-第4版预防建议解读课件
- 电厂设备检修协议合同
- 月子中心流感防控要点宣教大纲
- 企业反恐怖安全风险评估报告
- 外刊改编语法填空题Day+75-Day+76- 高三英语一轮复习
- 西气东输三线中段(中卫-吉安)工程重大变动环评
评论
0/150
提交评论