1、1第10章 项目实战篇10.2 SLMS系统功能实现之登录、退出登录以及员工列表框架程序设计(Java)210.2.0学习目标在项目中引入在项目中引入UIUI资源(用户界面)资源(用户界面)1登录、退出登录的实现登录、退出登录的实现2员工的查询列表员工的查询列表3310.2.1在项目中引入UI资源o UI资源即指用户界面资源,涉及到美工通过切图设计出来的css、image、html页面等文件o 我们首先需要在项目中将这些资源引入到的项目中并呈现出来o 具体实施步骤可参考视频410.2.2登录、退出登录的实现o 登录功能:o 员工成功登录后,我们肯定希望在任何时候都能获取到登录的员工信息,因此我
2、们需要将员工的id、code、name等关键信息保存都session中o 以下演示两种方式,将登录用户的信息放入session中510.2.2登录、退出登录的实现o 第一种方式:通过HttpSession对象:oRequestMapping(/submit)opublic String login_submit(String code,String password,HttpSession session)o/业务逻辑oboolean result=loginService.execute(code,password);oif(result)o/获取当前员工信息并保存在session中oEmp
3、loyee cnd=new Employee();ocnd.setCode(code);ocnd.setPassword(password);oEmployee employee=employeeService.getEmployee(cnd);osession.setAttribute(curEmployee,employee);oreturn login/login_succ;oelseoreturn login/login_fail;oo610.2.2登录、退出登录的实现o 第二种方式:通过SessionAttributes注解:o 步骤1:首先在类上加上SessionAttribute
4、s注解并指定其value,如下:n Controllern SessionAttributes(value=curEmployee)n public class LoginControllerp 步骤二:在提交登录的的方法中加入Model或者ModelMap参数,当向其中加入名称为curEmployee的对象时,也自动会将该对象放入session中,如下所示:710.2.2登录、退出登录的实现o/用来接受用户的提交请求oRequestMapping(/submit)opublic String login_submit(String code,String password,Model mod
5、el)o/业务逻辑oboolean result=loginService.execute(code,password);oif(result)o/获取当前员工信息并保存在session中oEmployee cnd=new Employee();ocnd.setCode(code);ocnd.setPassword(password);oEmployee employee=employeeService.getEmployee(cnd);omodel.addAttribute(curEmployee,employee);oreturn login/login_succ;oelseoreturn
6、 login/login_fail;oo810.2.2登录、退出登录的实现o 退出登录功能,需要清除session的信息:oRequestMapping(/logout)opublic String logout(SessionStatus sessionStatus)osessionStatus.setComplete();oreturn login;o910.2.3员工的查询列表o 步骤1:在后台通过mybatis获取员工列表,并放到Model或者ModelMap中oRequestMapping(/employee/list)opublic String EmployeeList(Mode
7、l model)oList list=employeeService.getEmployees();omodel.addAttribute(employees,list);oreturn employee/EmployeeList;o1010.2.3员工的查询列表o 步骤2:使用JSTL(JavaServerPages Standard Tag Library)JSP标准标签库来操作后台数据,如下o1、导入支持jstl标签库的jar包到工程njstl.jarnstandard.jaro2、员工查询页面中加入c开头的标签库n o3、使用标签遍历集合,使用标签来执行判断,如下所示:1110.2.3员工的查询列表o oo$item.codeooo销售人员ooo采购人员ooo管理员ooo$item.nameo$item.birthdayooo女ooo男ooo$item.telephoneo$item.emailoo