毕业论文JavaWeb项目招聘网站.docx

上传人:b****6 文档编号:7910172 上传时间:2023-01-27 格式:DOCX 页数:42 大小:2.07MB
下载 相关 举报
毕业论文JavaWeb项目招聘网站.docx_第1页
第1页 / 共42页
毕业论文JavaWeb项目招聘网站.docx_第2页
第2页 / 共42页
毕业论文JavaWeb项目招聘网站.docx_第3页
第3页 / 共42页
毕业论文JavaWeb项目招聘网站.docx_第4页
第4页 / 共42页
毕业论文JavaWeb项目招聘网站.docx_第5页
第5页 / 共42页
点击查看更多>>
下载资源
资源描述

毕业论文JavaWeb项目招聘网站.docx

《毕业论文JavaWeb项目招聘网站.docx》由会员分享,可在线阅读,更多相关《毕业论文JavaWeb项目招聘网站.docx(42页珍藏版)》请在冰豆网上搜索。

毕业论文JavaWeb项目招聘网站.docx

毕业论文JavaWeb项目招聘网站

《JavaWeb开发》项目——网上招聘

毕业设计指导网提供

项目概要

Ø该招聘站点提供一个平台给用人单位和求职者,用人单位在站点上发布招聘信息,求职者可以通过网络查看自己感兴趣的工作。

Ø同时,求职者可以在招聘站点上注册自己的个人信息,用人单位可以检索与招聘职位要求符合的求职者。

并可以通过信件的形式通知符合招聘条件的求职者面试。

用人单位可以把诸多符合条件的求职者添加到收藏夹,作为人才储备。

Ø求职者可以把自己感兴趣的单位添加到个人的收藏夹,也可以向用人单位发送邮件。

Ø使用B/S结构

项目目标

Ø掌握JSP界面制作。

Ø掌握Servlet的使用。

Ø掌握会话跟踪技术的使用。

Ø掌握CSS和层在页面的运用

项目描述

项目分为单位、个人和公共三个模块:

Ø公共模块实现的功能:

◆站点在首页上以表格的形式显示当日最新8个用人单位招聘职位、最新的8个求职信息,以列表的形式显示最新6条招聘新闻和该新闻被点击的次数。

首页上还提供“更多”的超链接,点击这些超链接,在新窗口分别以分页的形式显示全部的招聘职位、个人求职信息和招聘新闻。

◆点击招聘单位的超链接,在新窗口显示该单位的详细介绍;点击招聘职位的超链接,在新窗口显示该职位的相关描述和要求;点击每个招聘新闻标题的超链接,在新窗口显示新闻的详细内容。

◆首页上提供按条件搜索的功能,用户可以搜索职位信息和求职信息,在新窗口以分页的方式显示搜索结果。

◆首页上提供注册和分类登录功能。

Ø个人模块实现功能:

◆个人求职用户可以登录到系统,第一次注册的用户可以新增个人基本资料、个人特长和工作经历、希望的工作和联系方式作为简历等信息。

◆已注册用户可以选择性的修改简历中的个人的求职信息。

◆“修改登录密码”超链接可以修改密码。

◆“全部职位列表”以表格的形式显示与个人求职意向匹配的职位信息,多条以分页的方式显示。

每条信息提供公司名称和职位名称超链接,用来在新窗口显示详细信息。

同时,提供“发信”和“添加到收夹”超链接。

◆“发信”功能向招聘单位发送求职信。

对于求职者感兴趣的职位,可以添加到收藏夹。

◆“我的收藏夹”以表格的形式招聘单位名称和职位,同时提供“发信”和“删除”超链接。

求职者可以给照片单位发送求职信,也可以删除收藏夹内容。

◆“我的信箱”以表格的形式显示发信单位、标题、回复和删除超链接。

并实现这些功能。

◆实现推出登录功能

Ø单位模块实现功能:

◆功能和个人模块差不多,单位用户可以登录到系统,第一次注册的单位用户可以新增单位的基本资料。

◆已注册的单位用户可以选择性的修改单位的基本信息。

◆“发布招聘信息”超链接用来发布职位信息。

◆“修改登录密码”超链接可以用来修改密码。

◆“全部人才列表”以表格的形式显示所有求职者信息,多条以分页的方式显示。

每条信息显示“姓名”超链接,用来在新窗口显示该求职者的详细信息。

同时,提供“发信”和“添加到收夹”超链接。

◆“发信”功能向求职者发送面试通知。

对于招聘单位感兴趣的求职者,可以添加到收藏夹。

◆“我的收藏夹”以表格的形式显示求职者的姓名、性别、学历、应聘职位。

姓名使用超链接,用来在新窗口显示该求职者的详细信息。

提供“发信”和“删除”超链接。

招聘单位可以给求职者发送面试通知,也可以删除收藏夹内容。

◆“我的信箱”以表格的形式显示发信单位、标题、回复和删除超链接。

并实现这些功能。

◆实现退出登录功能

项目实践

第一阶段:

阶段描述:

设计数据库:

整个系统包括8个表。

分别是招聘单位信息表、用户信息表、职位信息表、工作新闻表、个人邮箱表、个人收藏夹表、招聘单位信息表、招聘单位邮箱表、招聘单位收藏夹表。

如下:

◆招聘单位信息表(company)

序号

字段

类型

大小

允许空

字段说明

1

id

int

F

公司编号自动增长,主件

2

uname

varchar

20

F

公司登录名唯一约束约束

3

pwd

varchar

20

F

密码

4

trade

varchar

20

T

所属行业

5

ctype

varchar

50

T

企业类型,外资、民营等

6

area

varchar

50

T

省份或城市

7

fund

int

T

注册资金(百万为单位)

8

fdate

datetime

T

公司成立日期

9

address

varchar

200

T

公司所在地

10

zip

varchar

6

T

邮政编码

11

pname

varchar

10

T

联系人姓名

12

phone

varchar

20

T

联系电话

13

fax

varchar

20

T

传真

14

email

varchar

50

T

电子邮件

15

http

varchar

50

T

公司网站地址

16

summary

varchar

1000

T

公司简介

17

click

int

T

点击数

◆招聘职位信息表(job)

序号

字段

类型

大小

允许空

字段说明

1

id

int

F

职位编号,自动增长,主键

2

jobname

varchar

50

F

职位名称

3

idate

datetime

T

F

职位发布日期

4

number

int

T

职位需求数量

5

location

varchar

50

T

工作地点

6

description

varchar

200

T

职位描述

7

requirement

varchar

200

T

职位要求

8

cid

int

T

公司的ID,外键

◆个人求职信息表(person)

序号

字段

类型

大小

允许空

字段说明

1

uname

varchar

20

F

个人登录名称,主键

2

pwd

varchar

20

T

密码

3

iname

varchar

20

T

真实姓名

4

code

varchar

18

T

身份证号码

5

mzhu

varchar

20

T

民族

6

marry

varchar

10

T

婚姻状况

7

politics

varchar

20

T

政治面貌

8

zchen

varchar

20

T

职称

9

birthday

datetime

T

生日

10

sex

varchar

10

T

性别

11

householder

varchar

50

T

户口所在地

12

edu

varchar

20

T

学历

13

school

varchar

20

T

毕业学校

14

major

varchar

20

T

专业

15

language

varchar

50

T

语言

16

lanlevel

varchar

10

T

语言级别

17

mandarin

varchar

20

T

普通话程度

18

computer

varchar

20

T

计算机能力

19

other

varchar

50

T

其他

20

workyears

int

T

工作年限

21

experience

varchar

2000

T

工作经验

22

jobtype

varchar

50

T

职位类型

23

job

varchar

200

T

职位

24

location

varchar

20

T

工作地点

25

salary

float

T

薪水要求

26

special

varchar

100

T

特长

27

cname

varchar

20

T

联系人

28

phone

varchar

50

T

电话

29

cellphone

varchar

50

T

手机号码

30

email

varchar

50

T

电子邮件

31

qq

varchar

20

T

电子邮件

32

addreess

varchar

100

T

家庭住址

33

http

varchar

50

T

个人主页

34

click

int

T

简历被阅览次数

35

idate

datetime

T

登录日期

◆招聘单位邮箱表(cmailbox)

序号

字段

类型

大小

允许空

字段说明

1

id

int

F

邮件编号自动增长,主键

2

reid

varchar

20

F

公司登录名,外键引用company(uname)

3

senduid

varchar

20

F

个人登录名,外键引用person(uname)

4

sendname

varchar

20

F

发件人姓名

5

title

varchar

50

T

邮件标题

6

mailtext

varchar

8000

T

邮件正文

7

sdate

datetime

T

邮件日期

8

newmail

int

T

是否是新邮件

◆招聘单位收藏夹表(cfavorite)

序号

字段

类型

大小

允许空

字段说明

1

id

int

F

编号自动增长,主键

2

uname

varchar

20

F

公司登录名,外键引用company(uname)

3

fuid

varchar

20

F

个人登录名,外键引用person(uname)

◆求职者邮箱表(pmailbox)

序号

字段

类型

大小

允许空

字段说明

1

id

int

F

邮件编号自动增长,主键

2

reid

varchar

20

F

个人登录名,外键引用person(uname)

3

senduid

varchar

20

F

公司登录名,外键引用company(uname)

4

sendname

varchar

20

F

发件人姓名

5

title

varchar

50

T

邮件标题

6

mailtext

varchar

8000

T

邮件正文

7

sdate

datetime

T

邮件日期

8

newmail

int

T

是否是新邮件

◆求职个人收藏夹表(pfavorite)

序号

字段

类型

大小

允许空

字段说明

1

id

int

F

编号自动增长,主键

2

uname

varchar

20

F

个人登录名,外键引用person(uname)

3

fuid

varchar

20

F

公司登录名,外键引用company(uname)

◆招聘新闻表(jobnews)

序号

字段

类型

大小

允许空

字段说明

1

id

int

F

新闻编号自动增长,主键

2

title

varchar

200

T

招聘新闻标题

3

text

varchar

8000

T

新闻内容

4

click

int

T

新闻点击数

5

idate

datetime

T

新闻发布时间

要点分析:

1.根据相应的信息设计合理的表字段的数据类型。

2.建立表之间的关系。

第二阶段:

阶段描述:

使用三层结构的方式创建数据库访问对象:

◆建立数据库操作的支持类DBHelper.java、DBCommand.java和属性文件jdbcInfo.properties。

◆分别为8个表建立对应的DTO。

◆分别为8个表建立数据操作对象DAO。

◆分别为上面定义的业务建立业务接口及相应的业务实现类。

要点分析:

1.DAO部分需要实现对数据库表的增删改查。

2.定义业务接口以及业务接口中的方法。

3.要在业务实现类中,使用不同的DAO来操作数据库从而实现具体的业务。

参考代码:

JobDTO代码:

packagebean;

publicclassJob{

privateIntegerid;

privateStringjobname;

privateStringidate;

privateIntegernumber;

privateStringlocation;

privateStringdecription;

privateStringrequirement;

privateIntegercid;

publicStringgetJobname(){

returnjobname;

}

publicvoidsetJobname(Stringjobname){

this.jobname=jobname;

}

publicStringgetIdate(){

returnidate;

}

publicvoidsetIdate(Stringidate){

this.idate=idate;

}

publicIntegergetNumber(){

returnnumber;

}

publicvoidsetNumber(Integernumber){

this.number=number;

}

publicStringgetLocation(){

returnlocation;

}

publicvoidsetLocation(Stringlocation){

this.location=location;

}

publicStringgetDecription(){

returndecription;

}

publicvoidsetDecription(Stringdecription){

this.decription=decription;

}

publicStringgetRequirement(){

returnrequirement;

}

publicvoidsetRequirement(Stringrequirement){

this.requirement=requirement;

}

publicIntegergetId(){

returnid;

}

publicvoidsetId(Integerid){

this.id=id;

}

publicIntegergetCid(){

returncid;

}

publicvoidsetCid(Integercid){

this.cid=cid;

}

}

JobDAO的代码如下:

packagedao;

importjava.util.List;

importbean.Job;

publicabstractclassJobDAOextendsBaseDAO{

publicabstractListgetAllJobs();

publicabstractJobgetJobByID(Integerid);

publicabstractintupdateJob(Jobjob);

publicabstractintinsertJob(Jobjob);

publicabstractintdeleteJobByID(Integerid);

}

JobDAOImpl的代码如下:

packagedao;

importjava.util.List;

importjava.sql.*;

importjava.util.*;

importsupport.*;

importbean.Job;

publicclassJobDAOImplextendsJobDAO{

privatePreparedStatementpstm;

publicJobgetJobByID(Integerid){

Jobjob=null;

try{

pstm=this.getConn()

.prepareStatement("select*fromjobwhereid=?

");

MapparamsMap=newLinkedHashMap();

paramsMap.put("id",id.intValue());

List>jobList=DBCommand.execQuery(pstm,paramsMap);

if(jobList.size()!

=0){

job=newJob();

Maprow=jobList.get(0);

job.setId(newInteger(row.get("id").toString()));

job.setJobname(row.get("jobname").toString());

job.setIdate(row.get("idate").toString());

job.setNumber(newInteger(row.get("number").toString()));

job.setLocation(row.get("location").toString());

job.setDecription(row.get("decription").toString());

job.setRequirement(row.get("requirement").toString());

job.setCid(newInteger(row.get("cid").toString()));

}

}catch(Exceptione){

e.printStackTrace();

}

returnjob;

}

@Override

publicintdeleteJobByID(Integerid){

……

return0;

}

@Override

publicListgetAllJobs(){

……

returnnull;

}

@Override

publicintinsertJob(Jobjob){

……

return0;

}

@Override

publicintupdateJob(Jobjob){

……

return0;

}

}

JobService的代码如下:

packageservice;

importjava.util.List;

importbean.Job;

publicinterfaceJobService{

publicListgetAllJobs();

publicJobgetJobByID(Integerid);

publicbooleanupdateJob(Jobjob);

publicbooleaninsertJob(Jobjob);

publicbooleandeleteJobByID(Integerid);

}

JobServiceImpl的代码如下:

packageservice;

importjava.util.List;

importbean.Job;

importdao.*;

importsupport.*;

publicclassJobServiceImplimplementsJobService{

privateJobDAOdao=newJobDAOImpl();

publicJobgetJobByID(Integerid){

dao.setConn(DBHelper.getConn());

Jobjob=null;

try{

job=dao.getJobByID(id);

}catch(RuntimeExceptione){

e.printStackTrace();

}finally{

DBHelper.closeConn();

}

returnjob;

}

publicbooleandeleteJobByID(Integerid){

……

returnfalse;

}

publicListgetAllJobs(){

……

returnnull;

}

publicbooleaninsertJob(Jobjob){

……

returnfalse;

}

publicbooleanupdateJob(Jobjob){

……

returnfalse;

}

}

第三阶段:

阶段描述:

◆建立站点的公共模块,创建站点主界面,主要完成招聘职位、求职信息和招聘新闻的展示功能。

“公司名称”、“招聘职位”、“姓名”和“招聘新闻标题”提供超链接。

◆招聘职位、求职信息和新闻资讯的“更多”提供超链接。

◆实现按条件搜索的功能,在新窗口以分页的方式显示搜索结果。

◆实现用户登录和注册的功能。

◆显示站内的统计功能:

招聘信息、求职简历、注册用户和站内信件。

主界面如下图所示:

图1-1

点击每个“公司名称”超链接,则在新窗口显示该公司的详细信息,如图1-2所示,点击“关闭窗口”则关闭该窗口。

图1-2

点击每个职位的超链接,则在新窗口显示该职位的详细信息,并显示该职位被浏览的次数,如图1-3所示,点击“关闭窗口”,则关闭该窗口。

图1-3

点击每个“姓名”的超链接,则显示个人求职的详细信息,如图1-4所示:

图1-4

点击每个“新闻标题”,则在新窗口显示该条新闻的详细内容,如图1-5所示:

图1-5

点击招聘职位的“更多”超链接,则在新窗口以表格的形式显示所有的最新招聘职位,多行以分页的形式显示。

公司名称和招聘职位仍然使用超链接,点击则在本页面里显示相关的详细信息。

如图1-6所示:

图1-6

点击求职信息的“更多”超链接,则在新窗口以表格的形式显示所有的个人求职信息,多行以分页的形式显示。

如图1-7所示,“姓名”仍然使用超链

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 自我管理与提升

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1