人才招聘网站

来源:互联网 发布:淘宝保证金缴纳 编辑:程序博客网 时间:2024/05/05 13:02

马上要找实习了,这段时间一直在复习巩固以前学习的东西,前段时间抽空那一个“人才招聘网站”复习了一下struts2的基础知识,这里我把实现逻辑贴出来,一方面希望能帮到需要的人,另一方面方便自己在以后做类似网站的时候可以做一个对比:

数据库表:

userInfo(id,username,password)用户账户信息

userbaseinfo(id,username,realname,sex,birthday,marry,degree,telephone,email,skill,description,waddress,wjobtype,wsalary,resumephoto)用户基本信息

company(id,username,password,email)企业账户信息

companybaseinfo(id,username,comfullname,comtype,bill,comdescription,empcount,comaddress,email,comtelephone,manager,mantel,website,comimage)企业基本信息

companyemployinfo(jobid,username,jobname,comfullname,comaddress,jobwpersoncount,jobstatus,degree,language,salary,startdate,enddate,jobdescription)企业发布的职位信息

userresume(id,jobname,comfullname,username[普通用户注册时的用户名])用户简历的投递情况

实现逻辑:

普通用户的功能实现

1、普通用户登录(user-login.jsp):填写用户名和密码之后提交给loginPerson.action(LoginAction.java),如果是普通用户登录则跳转到用户个人主页(userPage.jsp),如果是管理员登录,则跳转到管理员主页(admin.jsp);

2、普通用户注册(user-register.jsp):注册时只需要填写用户名和密码,提交给userRegist.action(UserRegistAction.java)进行注册,完成注册后跳转到注册成功页面(user-register-success.jsp),在该页面进一步完善用户个人信息;

3、完善用户个人信息(user-register-success.jsp):填写个人基本信息之后提交给userRegistAfter.action(UserRegistAfterAction.java)进行持久化操作,之后跳转到用户个人主页(userPage.jsp);

4、用户个人主页(userPage.jsp)有5个主要功能:

4.1、查看简历(userResume.jsp,删除和增加简历):点击查看简历,调用selectUserResume.action(SelectUserResumeAction.java)从数据库中查回相应的简历进行展示;

4.2、增加简历(user-register-success.jsp);

4.3、删除简历(点击“删除简历”调用deleteResume.action(DeleteResumeAction),然后跳转到增加简历的页面,并且增加一句话“简历删除成功”(这句话怎么增加?在相应的action中加一个有getter和setter方法的属性,然后给它赋值一句话,之后在页面中直接获取就行了);

4.4、浏览招聘信息:点击“浏览招聘信息”调用selectAllEmployInfo.action(SelectAllEmployInfoAction.java),该action调用业务层方法查回所有的招聘信息,然后跳转到allEmployInfo.jsp进行显示;

4.5、投递简历(putResume.jsp):在该页面只需要输入工作名称和要投递的公司全名提交给putResumetoComapny.action(PutResumetoComapnyAction.java),在该action中调用业务层方法将工作名称、公司全名和公司注册时的username一同插入数数据库表userresume,之后返回用户个人主页,显示投递成功;

4.6、退出系统(index.jsp)

企业用户的功能实现

5、企业登录(company-login.jsp):填写用户名和密码之后提交给loginCompany.action(LoginCompanyAction.java),然后跳转到企业主页(companyPage.jsp)

6、企业注册(company-register.jsp):注册时只需要填写用户名、密码和邮箱,提交给companyRegist.action(CompanyRegistAction.java)进行注册,完成注册后跳转到注册成功页面(company-register-success.jsp),在该页面进一步完善企业信息;

7、完善企业信息(company-register-success.jsp):填写企业信息之后提交给companyRegistAfter.action(CompanyRegistAfterAction.java)进行持久化操作,之后跳转到完善企业招聘信息(company-register-employ.jsp),在该页面完善企业的招聘信息;

8、完善企业的招聘信息(company-register-employ.jsp):填写企业招聘信息之后提交给companyRegistEmploy.action(CompanyRegistEmployAction.java)进行持久化操作,之后跳转到企业主页(companyPage.jsp);

8、企业主页(userPage.jsp)有三个主要功能:

8.1、查看本企业的招聘信息(companyEmployInfo.jsp,删除和增加本企业的招聘信息)点击查看本企业的招聘信息,调用selectCompanyEmployInfo.action(SelectCompanyEmployInfoAction.java)从数据库中查回相应的简历展示到companyEmployInfo.jsp;

8.2、删除本企业的招聘信息(deleteCompanyEmployInfo.jsp),在该页面中输入要删除的招聘信息的工作名称,然后提交给deleteCompanyEmployInfo.action(DeleteCompanyEmployInfoAction.java),该action调用业务层方法,通过工作名称和公司注册时用的名称(从session中获取该公司名称)来删除该条招聘信息;

8.3、增加本企业的招聘信息(company-register-employ.jsp)

8.4、浏览用户投的简历:点击“浏览用户投的简历”调用一个lookupUserResume.action
(LookupUserResumeAction,java),在该acion中获取该公司的username,调用业务层方法通过企业的username从companybaseinfo表中查回该username对应的comfullname,再通过该comfullname从userresume表中查回相应的简历信息,显示到lookupResume.jsp;【减轻数据库的压力,但是查询速度可能比较慢】

8.5、退出系统(index.jsp)

开发过程中遇到的问题

1、
在进行用户注册时,插入数据库时,对于id的处理。数据库中,设置id自动增长!!!!不要忘记啊!!在插入时就不用考虑id了,只需要插入用户名和密码就可以了。在程序中,如果需要设置id的话,可直接设置为空;
http://zhidao.baidu.com/link?url=1Qe5PR-PSZjxwRF9pShG1cEXhZCIpQ9NpcpJtNgq1qHPKrCNhyT_F9WTOOrdAuWJ1w8JL3fFRAPyUgcl2VMffK

2、
Template /template/ajax/head.ftl not found.有关Ajax主题的引入。

引入jar包,正确的写法如下:

<%@ taglib uri="/struts-dojo-tags" prefix="ss" %><ss:datetimepicker name="birthday" displayFormat="yyyy-MM-dd" /> 

3、我想点击“查看简历”跳转到userResume.jsp,这个过程要调用selectUserResume.action(SelectUserResumeAction.java)来查回简历信息(通过姓名查询);如何通过“查看简历”这个链接来调用一个action呢???

<struts: a href="actionname" > </struts: a>

4、FreeMarker template error!

解决方法:
http://blog.csdn.net/zhangyulin54321/article/details/9109139

5、session中存放用户登录和注册之后的用户名密码,当用户点击查看简历时,通过什么来查回该用户的简历呢???

所以我想到的解决办法就是:当用户注册成功完善个人信息时要有一个属性“注册时的昵称”,即要在userbaseinfo表中加一个username属性!!

6、从后台action中得到一个结果集,如何把这个结果集在JSP页面中显示出来???
(userResume.jsp,SelectUserResumeAction.java)

该对象集不需要定义成List或者Map之类的对象,只需要是其相应的JavaBean对象就行。后台要把该对象集的各个属性分别显示出来,在后台action中一定要有该对象集的getter和setter方法!!!!!而该对象集的各属性的getter和setter方法不需要有(前提是该对象集是一个javabean对象,并且相应的方法已经定义)。

另外,前台需要显示的属性后台action中一定要有相应的getter和setter方法!!!!!!!!!!!1

注意!!!!!!以公司身份登陆时,在查看某公司发布的招聘信息时,用到的就是一个List集合!!!我的设计思想是,通过公司注册时使用的username来查回发布的相应招聘信息,一个用户名下,也就是一个公司帐户下可以发布多条招聘信息。

7、该项目中使用了一个自定义的拦截器用于权限验证,关于拦截器的使用,以下是要注意的问题:

a、在struts.xml中配置拦截器时要先配置拦截器在配置全局Result!!

b、一定要注意!!使用自定义拦截器的action一定也要配置默认拦截器的引用,因为默认拦截器包含了参数的读取、session的管理等功能。

<interceptor-ref name="defaultStack" />

c、一定要注意,拦截器只能拦截action,无法拦截所有的请求,如JSP页面的访问!!!!,如果想拦截对JSP页面的访问可以使用过滤器来完成。

8、使用拦截器之后如何将有关拦截器验证情况的信息带回到相应的JSP页面???

拦截器中可写出如下代码:
ActionSupport action=(ActionSupport)invocation.getAction();
action.addActionMessage(“您还没有登录或者登陆已经超时,请重新登陆!(要展示的有关拦截器验证情况的信息)”);

在前台的JSP页面中通过${ action.actionMessages }取得该提示信息

1 0
原创粉丝点击