




免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java+struts2防盗链Author:Rose(wangjiaoe)Time:20101028前段时间使用到了防盗链,使用时用的是过滤器filter,其中遇到了问题,最后对action无法过滤问题得到了解决,这儿写个小笔记记录一下。防盗链:解释一下什么是防盗链:就是防止在没有通过合理的登陆界面,直接进入到系统中优点:避免在每个页面判断是否获得session,虽然在里也是判断是否或的session,但是代码简单,重用性高步:建立一个类实现Filterpackage com.l99.filter;import java.io.IOException;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;/* * 实现filter () * * author filter * */public class LoginFilter implements Filter public void destroy() / TODO Auto-generated method stubpublic void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException HttpSession session = (HttpServletRequest) request).getSession();System.out.println(session.getAttribute(userInfo);/测试用/测试用,获取请求的地址System.out.println(HttpServletRequest)request).getRequestURI();/如果是登录就放行if (/RightManage/login.jsp.equals(HttpServletRequest) request).getRequestURI() / 放行chain.doFilter(request, response); else if (session.getAttribute(userInfo) = null) / 重定向到登录界面,或提示没有权限(HttpServletResponse)response).sendRedirect(/login.jsp);public void init(FilterConfig filterConfig) throws ServletException / TODO Auto-generated method stub2.配置: loginFilter com.l99.filter.LoginFilter文件全路径 /下面是你要防盗的页面,可以有多个或一个,因为在大型项目中,jsp页面分类会很细,可能装载在不同的文件夹所以可以有多对 loginFilter *.jsp loginFilter /form/cfa/* 过滤在form文件夹下,cfa子文件夹中的jsp页面 注释:测试就实现了简单的登录过滤二:加入struts2 ,对action进入过滤注意:Filter好像只可以过滤jsp,不可以过滤action,过滤action最好用拦截器1. XML 配置 struts2 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter struts2 /* 2. 创建拦截器类 ,实现Interceptorpackage erceptor;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpSession;import org.apache.struts2.ServletActionContext;import com.l99.right.ManageUserInfo;import com.opensymphony.xwork2.Action;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionInvocation;import erceptor.Interceptor;/* * 登录、权限拦截器 ,实现interceptor * author Owner * */public class LoginInterceptor implements Interceptorpublic void destroy() / TODO Auto-generated method stubpublic void init() / TODO Auto-generated method stub/* * 拦截器 */public String intercept(ActionInvocation invocation) throws Exception /获取uri /获取requestActionContext context = invocation.getInvocationContext();HttpServletRequest request = (HttpServletRequest)context.get(ServletActionContext.HTTP_REQUEST);/获取sessionHttpSession session = request.getSession();/获取请求的路径String path = request.getRequestURI();/判断是否登录,如果登录判断是否有访问的权限if(session.getAttribute(userInfo)= null)/ 重定向到登录界面/request.getRequestDispatcher(/login.jsp); 此方式用下面的 Action.LOGIN;代替return Action.LOGIN;else/判断访问的是否是 需要指定的权限的用户if(path.contains(/sysFun/right.action)ManageUserInfo userInfo = (ManageUserInfo) session.getAttribute(userInfo);if(!超级管理员.equals(userInfo.getRoleName()request.setAttribute(error, 对不起,您没有访问权限);return Action.ERROR;return invocation.invoke();3. struts.xml配置ssHello world!- struts2默认拦截器 -/WEB-INF/pages/error.jsp/login.jsp/WEB-INF/pages
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人教版二年级下册第4课 漂亮的包装纸教案配套
- 九年级历史上册 第七单元 工业革命、马克思主义的诞生与反殖民斗争 第19课 马克思主义的诞生教学设计 川教版
- 2024中建港航局海洋工程研究院招聘笔试参考题库附带答案详解
- 工程建设项目流程培训
- 车载充电机国内外研究现状培训
- 人教部编版 (五四制)一年级上册语文园地二教学设计及反思
- 五年级上册心理健康教案-4《了解自己的情绪》 北师大版
- 单位新闻摄影培训大纲
- 妇产科新护士培训计划
- 计算机大一上期末复习测试附答案
- 智慧工地管理措施
- 医疗试剂运输方案
- 阿尔及利亚医疗器械法规概述
- 宝宝舌系带短疾病演示课件
- 工程造价咨询服务方案(技术方案)
- 三级医院设备配置参考
- 加油站安全风险分级管控和隐患排查治理双重预防机制运行手册
- DB41-T 2549-2023 山水林田湖草沙生态保护修复工程验收规范
- 琴行装修合同
- 101个神奇的实验
- 第五章-定量遥感
评论
0/150
提交评论