servlet 不同登录用权限跳转不同页面简易实现
2015-11-13 10:26
585 查看
很多朋友第一接触javaweb和servlet想实现管理系统中不同用户角色进入相应权限的页面进行相应权限的操作功能,总的来说有很多方法,最简单想到就是直接在用户数据库中插入一列带有权限的字段(permission number),然后查询的时候,将值返回到对应的serlvet页面(LoginServlet.java),用简单的if判断即可。 下面是具体代码:
LoginServlet.java:
本文出自 “网络技术开发” 博客,请务必保留此出处http://icola.blog.51cto.com/5412204/1712398
LoginServlet.java:
package com.cola.controller; import java.io.IOException; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.cola.entity.Userjia; import com.cola.manager.impl.UserManagerOracleImpl; public class LoginServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request,response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8"); Userjia user = new Userjia(); user.setUsername(request.getParameter("userName")); user.setUserpasswd(request.getParameter("passwd")); //获取类型 System.out.println(user.getUsername()); request.setAttribute("haha", user); UserManagerOracleImpl userManager = new UserManagerOracleImpl(); int permission = userManager.isValid(user); // permssion = 1 为管理员 =0 为普通用户 //判断类型 if(permission==1){ request.getRequestDispatcher("/index.html").forward(request, response); System.out.println("userName------------>"+user.getUsername()); }else if(permission==0){ request.getRequestDispatcher("/index2.html").forward(request,response); System.out.println("userName------------>"+user.getUsername()); }else if(permission==-1){ request.getRequestDispatcher("/failed.html").forward(request,response); } } }userManager 中isValid(User ueser)的方法://用于将permission 回调的方法,用于判断
/*************************************************************** * * 验证登陆用户 * * *************************************************************/ public int isValid(Userjia user){ int permission = -1; Connection conn = null; ResultSet rs = null; Statement stmt = null; conn=ConnectionFactory.getConnection(); try { stmt = conn.createStatement(); rs = stmt.executeQuery ("select * from login_user where name ='" +user.getUsername()+"' and passwd= '"+user.getUserpasswd()+"' "); if(rs.next()){ permission = rs.getInt("permission"); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ CloseResource.release(rs, stmt, conn); } return permission; }至此,功能基本实现。
本文出自 “网络技术开发” 博客,请务必保留此出处http://icola.blog.51cto.com/5412204/1712398
相关文章推荐
- Android中dp,dip,sp,pt和px的区别
- [Objective-C]Class类型、class方法
- iOS-判断webView是否滑动到底部
- Java中getResourceAsStream的用法
- Nginx负载均衡配置实例详解
- JavaEE
- 英文对照
- android 中 系统日期时间的获取
- 复制,备份和镜像的区别
- IOS学习之 UIStackView入门
- C语言中restrict关键字学习 http://blog.csdn.net/llf021421/article/details/8092602
- 发现大量的TIME_WAIT解决办法
- 开启struts2开发模式
- eclipse Package Explorer中Other Projects问题
- 记一次tcmalloc分配内存引起的coredump
- iOS开发-常用第三方开源框架介绍
- 从CentOS7默认安装的/home中转移空间到根目录/ - LVM操作简明教程
- equals与hashCode
- 使用TextView实现跑马灯效果
- 《学习OpenCV》第五章课后题5