简单的权限管理

原理:运用session 保存一个对象,在该对象中添加一个字段用来控制权限

 

首先是对象的属性跟数据库字段对应,之后的配置也不做详细的解释

 

首先是一个登陆的页面,

 

 

这里呢我们在数据库添加三条信息

 

我们通过管理员的部门(DAPART字段)来限制管理员的操作

 

当登陆成功之后,我们直接在Servlet设置session并进行传递,代码如下

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        //转码
        request.setCharacterEncoding("UTF-8");
        response.setCharacterEncoding("UTF-8");
        response.setContentType("text/html");
        
        String loginname = request.getParameter("loginname") ;
        
        String password = request.getParameter("password") ;
        
        String ssex = request.getParameter("ssex") ;
        
        System.out.println("l = "+loginname +", p = " + password + ", s = " + ssex );
        
        if(password != null && loginname != null 
                && ! "".equals(password) && ! "".equals(loginname))
        {
            if("管理员".equals(ssex))
            {
                HAdmin ha = new LoginDAO().loginAdmin(loginname, password) ;
                if(ha != null)
                {
                    response.getWriter().write("登陆成功");
                    
                    HttpSession hs = request.getSession() ;
                    
                    hs.setAttribute("admin", ha);
                    System.out.println(ha);
                    response.sendRedirect("ceshi.jsp");
                }
                else
                {
                    response.getWriter().write("账号或密码输入有误");
                }
            }
            else
            {
                if(new LoginDAO().loginUser(loginname, password) != null)
                {
                    response.getWriter().write("登陆成功");
                }
                else
                {
                    response.getWriter().write("账号或密码输入有误");
                }
            }
        }
        else
        {
            response.getWriter().write("账号、密码不能为空");
        }
    }

 

上面我们将登陆的对象存进了session中,然后我们在jsp页面进行接收,并通过获取对象的depart

值,来进行权限的控制,代码如下

<%@page import="com.hanqi.entity.HAdmin"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>测试权限界面</title>
</head>
<body>
测试界面<br>
<%
HAdmin ha = (HAdmin)session.getAttribute("admin") ;

session.setAttribute("admin", ha) ;

if(ha.getDepart().equals("2"))
{

%>

天青色等烟雨<br>
而我在等你

<%} %>
<%
if(ha.getDepart().equals("3"))
{    
    %>
    
    让我们红尘作伴活的潇潇洒洒
    
    <%} %>
</body>
</html>

 

这是我们通过上面添加的三条记录来测试 ,当登陆的管理员部门不一样时,网页上显示的内容也是不一样的,这样我们就实现了简单的权限管理

posted @ 2016-12-13 09:53  丶疏影横斜  阅读(501)  评论(0编辑  收藏  举报