1、步骤

  • 登录之后可以将存储信息存储到session当中,也就是说session中有用户信息就表示登录成功了,如果没有表示没有登录成功

image.png
image.png

  1. if (success) {
  2. //成功
  3. //获取session对象,要求必须获取到session,没有session也要新建一个session对象
  4. HttpSession session = request.getSession();
  5. session.setAttribute("username",username);
  6. //重定向
  7. response.sendRedirect(request.getContextPath() + "/dept/list");
  8. } else {
  9. response.sendRedirect(request.getContextPath() + "/error.jsp");
  10. }
  1. /*获取当前session
  2. 你已经登录过了,如果没有session对象,无需新建
  3. 获取不到,则返回null
  4. */
  5. HttpSession session = request.getSession(false);
  6. //用户登陆过了,写过username了
  7. if (session != null && session.getAttribute("username") != null) {
  8. String servletPath = request.getServletPath();
  9. if ("/dept/list".equals(servletPath)) {
  10. doList(request, response);
  11. } else if ("/dept/detail".equals(servletPath)) {
  12. doDetail(request, response);
  13. } else if ("/dept/delete".equals(servletPath)) {
  14. doDel(request, response);
  15. } else if ("/dept/save".equals(servletPath)) {
  16. doSave(request, response);
  17. } else if ("/dept/edit".equals(servletPath)) {
  18. doEdit(request, response);
  19. } else if ("/dept/update".equals(servletPath)) {
  20. doUpdate(request, response);
  21. }
  22. }
  23. //跳转到登录页面
  24. else {
  25. response.sendRedirect(request.getContextPath() + "/index.jsp");
  26. }

  • 在每一个页面提示用户名
    • jsp报错不影响

image.png


  • 退出,手动销毁session_._invalidate();

image.png
image.png

2、实现

image.png

  • 不登录无法进入其他页面

image.png

3、源码

OA3.zip
Servlet做单表.sql
登录.sql