易截截图软件、单文件、免安装、纯绿色、仅160KB

JSP过滤器权限


今天下午,临下课的时候有个学生问了个关于过滤器的使用的问题,也不知道她从搞想到的,估计也是网上哪位达人的演示,她说原来那个功能有些局限,自己扩张了一下,但老是达不到效果。于是就来找我了。
她的需求如下:
1、目标:限制登录用户的访问页面,根据不同的权限可以查询相应的页面。
2、场景:已有三个用户admin、normal1、normal2,其中normal1只能访问page/jsp1下的页面,normal2只能访问page/jsp2下的页面;
根据她的描述,我打开她的代码一看,一个字“乱”,两个字“很乱”,完全看不到任何逻辑在里面,于是凭着经验大刀阔斧的给它来个修正,修正代码如下:
Java代码
if (session.getAttribute("user") != null) {   
    if(((UserInfo)session.getAttribute("user")).getName().equals("normal1") && !uri.startsWith("/page/jsp1")){   
        request.getRequestDispatcher("/page/jsp1/normal1.jsp").forward(request, response);   
    }   
    if(((UserInfo)session.getAttribute("user")).getName().equals("normal2") && !uri.startsWith("/page/jsp2")){   
        request.getRequestDispatcher("/MyJsp.jsp").forward(request, response);   
    }   
}else{   
    if(!(uri.endsWith("result.jsp") || !uri.endsWith("index.jsp"))){   
        request.getRequestDispatcher("/MyJsp.jsp").forward(request, response);   
    }   
}  
if (session.getAttribute("user") != null) {
if(((UserInfo)session.getAttribute("user")).getName().equals("normal1") && !uri.startsWith("/page/jsp1")){
request.getRequestDispatcher("/page/jsp1/normal1.jsp").forward(request, response);
}
if(((UserInfo)session.getAttribute("user")).getName().equals("normal2") &&am


相关文档:

jsp基础速成精华讲解

Servlet三个要素:
1.必须继承自HttpServlet
2.必须实现doGet()或者doPost()
3.必须在web.xml中配置Servlet
<servlet>
<servlet-name> </servlet-name>
<servlet-class> </servlet-class>
</servlet>
<servlet-mapping>
<servlet-name> </servlet-nam ......

JSP从服务器获取客户端访问IP


在很多应用下都可能有需要将用户的真实IP记录下来,这时就要获得用户的真实IP地址,在JSP里,获取客户端的IP地址的方法是: request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。
  这段时间在做IP统计的程序设计,由于服务器作了 ......

总结 JSP与 servlet之间的传值

这几天做了一个项目,大量用到了JSP与 servlet之间的传值,所以总结了一下
JSP与 servlet之间的传值有两种情况:JSP -> servlet, servlet -> JSP。
通过对象 request和 session (不考虑 application)完成传值。
一、JSP -> servlet
JSP页面有3种方法向 servlet传值: form表单、URL 、其他
<!--&nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号