实例介绍
【实例简介】
该系统用于管理企业的人事资源信息,本系统的实施能够使企业的人事管理跟家的科学化和正规化,减少人工手写时可能出现的种种问题,同时,该系统的实施可以节约企业成本,提高企业的工作效率。
人事管理系统的最终目标是避免和克服人工管理的信息滞后,劳动量大,计算和统计的不准确等种种缺陷和弊端,使企业的管理规范化和自动化。
【实例截图】
【核心代码】
AdminAction管理员的登录
public String login(){
Admin adminInfo = adminService.login(admin);
if(adminInfo == null){
//如果返回为空
return "loginFaild";
}else{
//将值设置到session中
ActionContext.getContext().getSession().put("adminInfo", adminInfo);
return "login";
}}
EmployeeAction.对人员信息的增删改查
public String addEmp(){
//查询所有部门的信息
List<Dept> listDept = deptService.getAll();
//用于循环输出部门的信息
request.put("listDept", listDept);
return "addEmp";
}
/***
* 添加员工,添加员工数据
*/
public String save(){
//根据部门编号进行查询部门
Dept dept = deptService.findById(deptId);
//然后设置到员工中
employee.setDept(dept);
//调用employee的service,保存员工数据
//传入的参数是上面模型驱动的参数
empService.save(employee);
//重定向到action
return "listAction";
}
//修改员工信息,进入修改视图
public String updateEmp(){
//获取要修改的员工的编号
int id = employee.getEmpId();
//根据员工的主键查询员工的信息(lazy="false")
Employee emp = empService.findById(id);
//查询所有的部门的信息
//已经有部门信息
List<Dept> listDept = deptService.getAll();
//数据回显
ValueStack vs = ActionContext.getContext().getValueStack();
//移除栈顶元素
vs.pop();
//入栈
vs.push(emp);
//保存
request.put("listDept", listDept);
return "updateEmp";
}
//修改员工信息,确认修改
public String update(){
//1:先根据部门编号,查询部门对象,再设置到员工属性中
Dept dept = deptService.findById(deptId);
employee.setDept(dept);
//2:更新员工
empService.update(employee);
//最后重定向到列表
return "listAction";
}
//删除员工信息
public String empDelete(){
//获取要删除员工的主键
int empId = employee.getEmpId();
System.out.println("empId:" empId);
//调用删除的方法
empService.delete(empId);
return "listAction";
}
//查询用户
public String selectEmp(){
//获取页面传来的员工姓名
String empName = employee.getEmpName();
System.out.println("empName: " empName);
//根据员工的姓名进行查询
List<Employee> list = empService.getAll(empName);
//将查询的结果保存到request中
//只有保存的listEmp和上面的一致,才能查询初内容
request.put("listEmp", list);
return "list";
}
Serice模块分为AdminSerice,DeptSerice,EmployeeSerice.
AdminSerice:
public class AdminServiceImpl implements AdminService{
//注入dao,一定要使用接口接受
private AdminDao adminDao;
public void setAdminDao(AdminDao adminDao) {
this.adminDao = adminDao;
}
@Override
public void register(Admin admin) {
if(admin != null){
adminDao.save(admin);
}
}
@Override
public Admin login(Admin admin) {
Admin adminInfo = adminDao.findByAdmin(admin);
System.out.println("service层:" adminInfo.getAdminName() " " adminInfo.getAdminPwd());
return adminInfo;
}
}
EmployeeSerice:
public class EmployeeServiceImpl implements EmployeeService{
private EmployeeDao empDao ;
public void setEmpDao(EmployeeDao empDao) {
this.empDao = empDao;
}
@Override
public void save(Employee emp) {
if(emp != null && !"".equals(emp)){
empDao.save(emp);
}
}
@Override
public void update(Employee emp) {
if(emp != null && !"".equals(emp)){
empDao.update(emp);
}
}
@Override
public void delete(Integer empId) {
//最好进行判断一下,参数是否为空
empDao.delete(empId);
}
@Override
public Employee findById(Integer empId) {
Employee emp = null;
if(empId != null){
emp = empDao.findById(empId);
}
return emp;
}
@Override
public List<Employee> getAll() {
List<Employee> list = null;
list = empDao.getAll();
return list;
}
@Override
public List<Employee> getAll(String empName) {
List<Employee> list = null;
if(empName != null){
list = empDao.getAll(empName);
}
return list;
}
@Override
public void deleteMany(int[] ids) {
if(ids != null && ids.length > 0){
//循环遍历
for(int id : ids){
//依次删除
empDao.delete(id);
}
}
}
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论