`
lxcaoxin
  • 浏览: 124858 次
  • 性别: Icon_minigender_1
  • 来自: 南宁
社区版块
存档分类
最新评论

jsp页面权限设置问题

    博客分类:
  • JSP
 
阅读更多
  在jsp页面中来设置权限,这里用Filter的方式来设置页面权限。下面举的例是一个简单用户登陆注册的例子,所以注册页面和登录页面是用户不用登陆就可以进去查看的。例子如下:
package com.itjob.filter;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class RightFilter implements Filter {
private static final String LOGIN_URI = "LOGIN_URI";
private static final String REG_URI = "REG_URI";


private String login_page;
private String reg_page;

public void destroy() {
}

public void doFilter(ServletRequest request, ServletResponse response,
   FilterChain chain) throws IOException, ServletException {
  HttpServletRequest req = (HttpServletRequest) request;
  HttpServletResponse resp = (HttpServletResponse) response;
  resp.setContentType("text/html;");
  resp.setCharacterEncoding("utf-8");
  HttpSession session = req.getSession();
  PrintWriter out = resp.getWriter();
  // 得到用户请求的URI
  String request_uri = req.getRequestURI();//="/JSPWork/index.jsp"

  // 得到web应用程序的上下文路径
  String ctxPath = req.getContextPath();//="/JSPWork"
  // 去除上下文路径,得到剩余部分的路径
  String uri = request_uri.substring(ctxPath.length());//="index.jsp"
  // 判断用户访问的是否是登录页面
if (uri.equals(login_page) || uri.equals(reg_page)){//注册和登录页面不过滤,如果不这么写,什么页面也进入不了
   chain.doFilter(request, response);
   return;
  } else {
   // 如果访问的不是登录页面,则判断用户是否已经登录
   if (null != session.getAttribute("username")
     && "" != session.getAttribute("username")) {
    chain.doFilter(request, response);
    return;
   } else {
    resp.sendRedirect("/JSPWork/login.jsp");
    return;
   }
  }
}

public void init(FilterConfig config) throws ServletException {
  // TODO Auto-generated method stub
  // 从部署描述符中获取登录页面和首页的URI
  login_page = config.getInitParameter(LOGIN_URI);
  reg_page = config.getInitParameter(REG_URI);
  // System.out.println(logon_page);
  if (null == login_page || null == reg_page) {
   throw new ServletException("没有找到登录页面或主页");
  }
}

}



在web.xml中注意添加以下内容:

<init-param>
     <param-name>LOGIN_URI</param-name>
     <param-value>/login.jsp</param-value>
    </init-param>
    <init-param>
     <param-name>REG_URI</param-name>
     <param-value>/register.jsp</param-value>
   </init-param>



分享到:
评论

相关推荐

    jsp用户权限管理系统

    完整的jsp权限管理系统页面、美丽的页面包含登录、主页面等20来个页面

    jsp权限控制,jsp自定义标签实现

    使用jsp自定义标签的功能实现权限的控制。(如果用户没有某个模块的删除权限,就不现实这个删除按钮) 在整个项目中所有的页面都可以引入自定义的标签去做到权限的控制。 自定义标签文件 删除 可以控制页面中的每...

    权限管理(JSP+MYSQL)

    权限管理权限管理权限管理权限管理权限管理权限管理权限管理

    jsp做的权限管理系统

    jsp 权限管理系统,完整原代码,可在Myeclipse 6.0.1下直接运行。

    Java serlvet+Jdbc+jsp+mysql 用户权限管理系统

    自己初学java,利用之前的项目经验而写出来的一套基础的用户权限管理系统。用到了javaWeb 最底层的servlet 及 jdbc .对初学java的童鞋具有很大的参考意义。页面是用了bootstrap。可以完整的运行。

    JSP 页面访问用户验证

    jsp安全性问题,当别人知道某个jsp文件的网址后就可以跳过登陆页面直接访问该jsp文件了,这样无法禁止外部无权限用户的访问。本文讨论内容是通过权限...JSP 页面验证,涉及到的知识有Session, 网页权限, 用户验证等。

    jsp+struts权限管理

    jsp+struts权限管理源代码。 package sunyang.functions.action; import java.util.List; import javax.servlet.http.HttpSession; import org.apache.struts2.ServletActionContext; import sunyang.functions...

    JSP页面中限制对Web资源的访问

    JSP页面中限制对Web资源的访问,欢迎各位下载!!

    管理系统 jsp 页面模板 (干净实用) 有js

    公司通用的管理系统模板 ,很干净很精致, 有js验证 ,欢迎大家下载, 下了就是用!

    jsp+mysql简单留言板实现

    采用纯jsp页面+Mysql的方法实现功能 项目编码是gb2312,要转换格式的请自己装换,界面简洁,功能简单,实现容易,非常适合初学者 有助于加深初学者对jsp的理解和使用Mysql数据库 String DBDRIVER = ...

    微信jssdk开发java+jsp源码

    通过config接口注入权限验证配置java+jsp微信开发教程,功能:扫描二维码,拍照、本地选图,图片预览,上传图片,下载图片,获取当前网络状态,查看地理位置,获取当前地理位置打开地图,关键是使用JsSignUtil获取了...

    JSP停车场车位管理系统myeclipse开发oracle数据库BS模式java编程网页结构

    JSP 停车场车位管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助servlet+bean+dao (mvc模式开发),系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Oracle 10g...

    基于JSP、JavaBean和Servlet的用户权限设计源码

    用户权限管理系统:基于JSP、JavaBean和Servlet开发,包含436个文件,包括130个JavaScript文件、46个CSS样式文件、44个GIF图像文件、43个JAR包文件、34个PNG图像文件、34个JSP页面、24个Java字节码文件、24个Java类...

    JSP页面报错列表查询

    [这是一小部分JSP页面报错详解……请下载更多……谢谢大家支持!] 401 Unauthorized 客户试图未经授权访问受密码保护的页面。应答中会包含一个WWW-Authenticate头,浏览器据此显示用户名字/密码对话框,然后在填写...

    微信公众号支付案例(jsp)

    6) pay_1.jsp 为发起支付页面,需按提示修改打开支付网页的域名。 7)payment.jsp为支付页面,成功生成微信支付订单后,需要在本地保存该业务记录,测试案例中删除了相关代码。(即第3步配置的支付页面) 8) payment_...

    JSP聊天+BBS论坛

    这个BBS和聊天室完全采用JSP开发,开发运行环境linux+tomcat,数据库oracle9i,JSP 通过JDBC与数据库相连。 一、功能 BBS和chatroom两者有机的结合在一起,用户可以在这两部分取得经验值,达到10000分 后升级为巫师,...

    网站性能优化 Web开发 JSP java

    1.页面静态化 html 解决方案:...4.SSI(包含页面)&lt;jsp:include&gt; 硬件提升:体现钱 DIV+CSS可提高用户体验 建议不使用table 权限模块: 1权限定义 权限组(角色) 权限拦截模块 A粗粒度(Filter)B细粒度(AOP)

    JSP大作业学籍管理系统

    JSP期末大作业(已拿优),界面美化用的bootstrap,数据库用的mysql,压缩包里含数据库脚本(导入运行即可),代码注释详细,...④权限页面放入WEB-INF,请求分派访问 ⑤数据分页 ⑥数据表五张以上 ⑦文件的上传和下载

    网页教程《跟姐姐学JSP》

    3.4. forward和redirect的问题 3.4.1. 绝对路径与相对路径 3.4.1.1. 相对路径 3.4.1.2. 绝对路径 3.4.2. forward导致找不到图片 4. 四个作用域 4.1. 何为作用域 4.2. 例子:在线列表 5. 结合javabean实现CRUD ...

    jsp登录数组验证

    利用jsp实现用户登录权限验证.利用的页面内数组验证.

Global site tag (gtag.js) - Google Analytics