• 根据登录的不同权限,登录不同的窗口!


    我们在网站登录的时候有的是以网站管理员登录的,有的是以一般用户登录的,因为管理员和一般的用户登录后的权限不同,那么我们该如何实现不同类型的用户登录跳转到不停的界面显示不同的结果呢?

    这里用户表的外键是用户组表的id

    其中若是用户组表的id为1的时候代表的是系统管理员,若是id为2的时候代表的是一般的用户

    下面我来看一下用户登录的action代码

    1. public String login() {  
    2.   String id = "";  
    3.   String username = "";  
    4.   //获得页面传来的用户名和密码给login,然后遍历数据库   
    5.   login = userService.login(userName,Password.createPassword(passWord));  
    6.   Iterator<UserInfo> rs = login.iterator();  
    7.   HttpSession session = ServletActionContext.getRequest().getSession();  
    8.   if (login.size() != 0) {  
    9.    while (rs.hasNext()) {  
    10.     //将所有的userInfo信息写进session中   
    11.     UserInfo userInfo = rs.next();      
    12.     session.setAttribute("userName", userInfo.getUserName()  
    13.       .toString().trim());  
    14.     session.setAttribute("userInfo", userInfo.getId().toString().trim());  
    15.     session.setAttribute("userGroup", userInfo.getUserGroup().getId());  
    16.     id = userInfo.getId().toString().trim();  
    17.     username = userInfo.getUserName().toString().trim();  
    18.    }  
    19.     return SUCCESS;  
    20.   } else {  
    21.   
    22.    return INPUT;  
    23.   }  
    24.   
    25.  }  
    public String login() {
      String id = "";
      String username = "";
      //获得页面传来的用户名和密码给login,然后遍历数据库
      login = userService.login(userName,Password.createPassword(passWord));
      Iterator<UserInfo> rs = login.iterator();
      HttpSession session = ServletActionContext.getRequest().getSession();
      if (login.size() != 0) {
       while (rs.hasNext()) {
        //将所有的userInfo信息写进session中
        UserInfo userInfo = rs.next();    
        session.setAttribute("userName", userInfo.getUserName()
          .toString().trim());
        session.setAttribute("userInfo", userInfo.getId().toString().trim());
        session.setAttribute("userGroup", userInfo.getUserGroup().getId());
        id = userInfo.getId().toString().trim();
        username = userInfo.getUserName().toString().trim();
       }
        return SUCCESS;
      } else {
    
       return INPUT;
      }
    
     }
    

    调用login方法来实现用户的登录,当成功登陆后我们先判断用户组的id,也就是代码中的userGroup,当userGroup为1的时候证明就是管理员用户,为2的时候是一般用户,这里我用的是

    <c:if test="${session.userGroup==1 }">   <form action="1.action" method="post"> </c:if>  

    <c:if test="${session.userGroup==2 }"> <form action="2.acion" method="post"> </c:if>   

    这里jsp页面要进入标签  <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%> 这里相当于是判断语句。下面可以根据相应的action执行不同的动作。

  • 相关阅读:
    js 隐藏、显示html 标签内容
    Elasticsearch第二章:Elasticsearch6.4.2破解xpack白金认证,以及kibana登录
    Elasticsearch第一章: 安装elasticsearch和kibana
    spring springboot2 结合 websocket+sockJs+stomp 实现个人订阅和广播模式
    MongoDB 查询重复手机号数量
    esxi直通sata控制器给群辉。群辉无法识别全部盘符,无法读取smart
    esxi直通显卡之后 游戏无法打开
    esxi硬盘直通,RDM
    SpringSecurity整合SpringSession-Redis 限制用户登录,SpringSecurity单用户登录
    Spring Security流程解释与配置
  • 原文地址:https://www.cnblogs.com/a892647300/p/2976642.html
Copyright © 2020-2023  润新知