• 基于javaEE的简单教务系统实现(二)


    package com.system.controller;
    
    import com.system.po.Userlogin;
    import org.apache.shiro.SecurityUtils;
    import org.apache.shiro.authc.UsernamePasswordToken;
    import org.apache.shiro.subject.Subject;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    
    /**
     * Created by Jacey on 2017/6/30.
     */
    @Controller
    public class LoginController {
    
        //登录跳转
        @RequestMapping(value = "/login", method = {RequestMethod.GET})
        public String loginUI() throws Exception {
            return "../../login";
        }
    
        //登录表单处理
        @RequestMapping(value = "/login", method = {RequestMethod.POST})
        public String login(Userlogin userlogin) throws Exception {
    
            //Shiro实现登录
            UsernamePasswordToken token = new UsernamePasswordToken(userlogin.getUsername(),
                    userlogin.getPassword());
            Subject subject = SecurityUtils.getSubject();
    
            //如果获取不到用户名就是登录失败,但登录失败的话,会直接抛出异常
            subject.login(token);
    
            if (subject.hasRole("admin")) {
                return "redirect:/admin/showStudent";
            } else if (subject.hasRole("teacher")) {
                return "redirect:/teacher/showCourse";
            } else if (subject.hasRole("student")) {
                return "redirect:/student/showCourse";
            }
    
            return "/login";
        }
    
    }

    登录方面控制器

    根据不同的角色显示不同的页面

  • 相关阅读:
    JS中的prototype与面向对象
    机电传动控制第二周学习笔记
    第三周作业
    机电传动控制第四周作业
    第五周学习笔记
    机电传动控制第一周学习笔记
    个人项目图书管理系统登陆功能模拟
    GITHUB使用及入门总结
    我的github地址
    工作压力改变了我?
  • 原文地址:https://www.cnblogs.com/520520520zl/p/14894116.html
Copyright © 2020-2023  润新知