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
相关文档:
项目框架S2SH,jsp页面如下,select列表设为multiple。为了能在action里取到前台界面select列表的多选值,瞎搞了两天,今天终于成功。其实后台action取前台jsp页面的值很简单,废话不多说,先贴代码:
<body>
<form action="sendMsg.action?senderId=${users.id }&username=${users.username}" m ......
在很多应用下都可能有需要将用户的真实IP记录下来,这时就要获得用户的真实IP地址,在JSP里,获取客户端的IP地址的方法是: request.getRemoteAddr(),这种方法在大部分情况下都是有效的。但是在通过了Apache,Squid等反向代理软件就不能获取到客户端的真实IP地址了。
这段时间在做IP统计的程序设计,由于服务器作了 ......
JSTL <c:out value="${EL}">不能正确输出的问题
由于Jsp2.0向后兼容的特性, 当遇到使用Jsp 1.2(Servlet v2.3)的网站时会默认的禁用JSP2.0 EL,所以导致c:out不能正确输出。
(这里注意Jsp 1.2禁用JSP2.0的EL,而是去使用JSTL 1.0 taglib去解析EL。所以使用JSP 1.2+JSTL 1.0不会出问题,
而使用了JSP 1.2+JSTL 1 ......
1、新建一个网站
(1) 启动 IIS 管理器,并新建一个网站(虚拟主机);如图所示:
1.jpg (34 KB)
2009-02-21 05:04
2.jpg (21 KB)
2009-02-21 05:04
(2) 输入网站名称,改名称仅为 IIS 中的标识,可任意输入。如图:
3.jpg (16 KB)
2009-02-21 05:09
(3) 网站IP地 ......