「这是我参与2022首次更文挑战的第19天,活动详情查看:2022首次更文挑战」
这篇文章主要写关于员工信息管理系统的开发,技术栈会用到Spring+Hibernate+Struts2,用在学生在学校的课程设计,以及毕业设计,主要学习功能的开发和设计思想,以及代码逻辑。
这个功能,主要有员工端,管理员端,两种角色,员工端,主要有人事管理功能,招聘管理功能,考勤管理功能,工资板块,而对于管理端,有着更多的管理功能与权限。
现在主要讲人事功能,在员工端,能够看到自己的基本信息,对自己的合同进行下载,可以看公司的培训信息。在管理端,对员工,部门信息进行查看,修改,删除,通过关键字搜索员工,部门,添加新的员工和部门,对合同文件的上传下载,对员工培训信息的查看,修改,删除。
现在主要看看怎么实现部门的功能。
部门管理
1、部门列表
// 部门列表
public String bumenlist() {
HttpServletRequest request = ServletActionContext.getRequest();
String name = request.getParameter("name");
StringBuffer sb = new StringBuffer();
sb.append(" where ");
StringBuffer sb2 = new StringBuffer();
sb2.append(" where ");
if (name != null && !"".equals(name)) {
sb.append("name like '%" + name + "%'");
sb.append(" and ");
sb2.append("name like '%" + name + "%'");
sb2.append(" and ");
request.setAttribute("name", name);
}
sb.append(" bumenlock=0 order by id desc");
String where = sb.toString();
sb2.append(" bumenlock=0 ");
String where2 = sb2.toString();
int currentpage = 1;
int pagesize = 10;
if (request.getParameter("pagenum") != null) {
currentpage = Integer.parseInt(request.getParameter("pagenum"));
}
int total = bumenDao.selectBeanCount(where2);
request.setAttribute("list", bumenDao.selectBeanList((currentpage - 1)
* pagesize, pagesize, where));
request.setAttribute("pagerinfo", Pager.getPagerNormal(total, pagesize,
currentpage, "method!bumenlist", "共有" + total + "条记录"));
this.setUrl("bumen/bumenlist.jsp");
return SUCCESS;
}
首先,拼接sql语句,判断,搜索字段里是否为空,所以用if (name != null && !"".equals(name))判断。接着,用Pager.getPagerNormal(total, pagesize, currentpage)做分页,参数有总页数total,每页的大小pagesize,当前页currentpage做了个分页功能。
2、添加部门
// 添加部门操作
public void bumenadd2() throws IOException {
HttpServletRequest request = ServletActionContext.getRequest();
String name = request.getParameter("name");
Bumen bean = new Bumen();
bean.setName(name);
bumenDao.insertBean(bean);
HttpServletResponse response = ServletActionContext.getResponse();
response.setCharacterEncoding("gbk");
response.getWriter()
.print("<script language=javascript>alert('操作成功');window.location.href='method!bumenlist';</script>");
}
ServletActionContext.getRequest()获取前端传入的请求,获得部门名称。 传入部门名字,并设置编码gbk,gbk是中文编码,response.setCharacterEncoding("gbk")设置编码,以防乱码。