📄 java.txt
字号:
*
* XDoclet definition:
*
* @struts.action path="/addJob" name="AddJobForm" input="/position/joblist.jsp"
* scope="request" validate="true"
* @struts.action-forward name="addjob" path="/position/jobdetail.jsp"
*/
public class AddJobAction extends Action {
/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse 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 = (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 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,Description,Requirements,JobNum.intValue())){
db.close();}
} catch (Exception e) {
e.printStackTrace();
}
return (mapping.findForward("toaddjob"));
}
}
4)OnlineCV/src/Model是目录中存放所有模块的模型模块,详见基线库的OnlineCV/src/Model目录下文件,表D-5是职位管理中的Job模块的代码。
表D-5:Job模块的代码
package com.changjiangcompany;
import java.sql.ResultSet;
import java.util.Vector;
public class Job {
// 与职位信息相关的基本属性和方法
public int JobID;
public int JobNum;
public String JobName;
public String PubDate;
public String EndDate;
public String Description;
public String Requirements;
public Job() {}
// 职位描述属性的set及get方法
public String getDescription() {
return Description;
}
public void setDescription(String Description) {
this.Description = Description;
}
// 职位描述截止日期set及get方法
public String getEndDate() {
return EndDate;
}
public void setEndDate(String EndDate) {
this.EndDate = EndDate;
}
// 职位ID的set及get方法
public int getJobID() {
return JobID;
}
public void setJobID(int JobID) {
this.JobID = JobID;
}
// 职位名称的set及get方法
public String getJobName() {
return JobName;
}
public void setJobName(String JobName) {
this.JobName = JobName;
}
// 职位招聘人数的set及get方法
public int getJobNum() {
return JobNum;
}
public void setJobNum(int JobNum) {
this.JobNum = JobNum;
}
// 职位发布日期的set及get方法
public String getPubDate() {
return PubDate;
}
public void setPubDate(String PubDate) {
this.PubDate = PubDate;
}
// 职位要求属性的set及get方法
public String getRequirements() {
return Requirements;
}
public void setRequirements(String Requirements) {
this.Requirements = Requirements;
}
/**
* 方法: jobSearch
* 描述: 查询满足条件的职位信息
* @param DB db 数据库对象
* @param String JobName 职位名称
* @param String PubDate 发布日期
* @param String EndDate 截止日期
* @return Vector 职位列表
* @throws Exception
*/
public static Vector jobSearch(DB db, String JobName,
String PubDate, String EndDate) throws 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("JobID"));
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"));
JobList.add(job);
System.out.println("nnnnnnnnnn,,,,,,,"+rs.getString("JobName"));
}
return JobList;
}
/**
* 方法: getJobList
* 描述: 获取职位列表
* @param DB db 数据库对象
* @return Vector 职位列表
* @throws Exception
*/
public static Vector getJobList(DB db)throws Exception{
Vector 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("JobName"));
job.setPubDate(rs.getString("PubDate"));
job.setEndDate(rs.getString("EndDate"));
job.setJobNum(rs.getInt("JobNum"));
JobList.add(job);
}
return JobList;
}
/**
* 方法: getJobDetail
* 描述: 获取职位详细信息
* @param DB db 数据库对象
* @param int JobID 职位代号
* @return Vector 职位列表
* @throws Exception
*/
public Vector getJobDetail(DB db,int JobID) throws Exception {
ResultSet rs;
String strSql = null;
strSql ="select * from JobList where JobID="+JobID;
rs = db.OpenSql(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"));
job.setDescription(rs.getString("Description"));
job.setRequirements(rs.getString("Requirements"));
job.setJobNum(rs.getInt("JobNum"));
JobList.add(job);
}
return JobList;
}
/**
* 方法: addJob
* 描述: 新加职位Form信息
* @param DB db 数据库对象
* @param String JobName 职位名称
* @param String PubDate 发布日期
* @param String EndDate 截止日期
* @param String Description 职位描述
* @param String Requirements 职位要求
* @param String JobNum 招聘人数
* @return boolean 数据库操作是否成功
* @throws Exception
*/
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 JobIDMax;
strSql="select max(JobID) from JobList";
rs=db.OpenSql(strSql);
if(rs.next()){
JobIDMax=rs.getInt(1)+1;
}else{
JobIDMax=1;
}
strSql = "insert into JobList values('" + JobName + "','" + PubDate
+ "','" + EndDate + "','" + Description + "','" + Requirements
+"','"+JobNum
+ "')";
if (db.ExecSql(strSql) == 0) {
return false;
} else {
return true;
}
}
/**
* 方法: modifyJob
* 描述: 修改职位信息
* @param DB db 数据库对象
* @param String JobID 职位代号
* @param String JobName 职位名称
* @param String PubDate 发布日期
* @param String EndDate 截止日期
* @param String Description 职位描述
* @param String Requirements 职位要求
* @param String JobNum 招聘人数
* @return boolean 数据库操作是否成功
* @throws Exception
*/
public 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+"',"
+"Description='"+Description+"',"
+"Requirements='"+Requirements+"',"
+"JobNum="+JobNum
+" where JobID="+JobID;
System.out.print("JobID"+JobID);
if (db.ExecSql(strSql) == 0) {
return false;
} else {
return true;
}
}
/**
* 方法: DeleteJob
* 描述: 删除职位信息
* @param DB db 数据库对象
* @param int JobID 职位代号
* @return boolean 数据库操作是否成功
* @throws Exception
*/
public boolean DeleteJob(DB db,int JobID) throws Exception {
String strSql = null;
strSql = "delete from JobList where JobID="+JobID;
if (db.ExecSql(strSql) == 0) {
return false;
} else {
return true;
}
}
}
5)OnlineCV/struts-bean.tld, OnlineCV/struts-html.tld, OnlineCV/struts-logic.tld, OnlineCV/CVTld.tld,是标签库。 其中OnlineCV/CVTld.tld是自定义标签库,其他是struct系统标准的标签库,详见基线库的OnlineCV/CVTld目录下文件,表D-6是身份验证模块的代码。
表D-6:身份验证的代码
package tag;
import javax.servlet.http.HttpSession;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.tagext.TagSupport;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
/**
* <strong>ValidateSessionTag</strong> is a custom tag used
* with this application to determine is a user has a current
* validate session.
*/
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 valid = 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.toString());
}
return (SKIP_PAGE); //执行跳转
}
}
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;
}
}
6)OnlineCV/Eaxm存放问卷管理的图片文件和JSP文件, 其中OnlineCV/Eaxm/Images存放图片文件, OnlineCV/Eaxm/JSP目录存放JSP文件. 详见基线库OnlineCV/Exam下的文件.
7)OnlineCV/Knowledge存放知识题库管理的图片文件和JSP文件, 其中OnlineCV/Knowledge/Images存放图片文件, OnlineCV/Knowledge/JSP 目录存放JSP文件. 详见基线库OnlineCV/Knowledge下的文件.
8)OnlineCV/Position存放职位管理的图片文件和JSP文件, 其中OnlineCV/Position/Images存放图片文件, OnlineCV/Position/JSP 存放JSP文件. 详见基线库OnlineCV/ Position下的文件.
9)OnlineCV/CVManagement存放简历管理的图片文件和JSP文件, 其中OnlineCV/CVManagement/Images存放图片文件, OnlineCV/CVManagement/JSP 存放JSP文件. 详见基线库OnlineCV/ CVManagement下的文件.
10)OnlineCV/Interview存放面试管理的图片文件和JSP文件, 其中OnlineCV/Interview/Images存放图片文件, OnlineCV/Interview/JSP 存放JSP文件. 详见基线库OnlineCV/ Interview下的文件.
11)OnlineCV/User存放用户管理的图片文件和JSP文件, 其中OnlineCV/User/Images存放图片文件, OnlineCV/User/JSP 存放JSP文件. 详见基线库OnlineCV/User下的文件.
12)OnlineCV/Client存放客户端的图片文件和JSP文件, 其中OnlineCV/Client/Images存放图片文件, OnlineCV/Client/JSP 存放JSP文件. 详见基线库OnlineCV/Client下的文件.
13)OnlineCV/WEB-INF/Classes存放所有的JAVA编译后的类文件. 详见基线库OnlineCV/Classes下的文件.
14)OnlineCV/WEB-INF/lib存放所有的库文件. 详见基线库OnlineCV/lib下的文件.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -