为了账号安全,请及时绑定邮箱和手机立即绑定

Struts2拦截器浅析

难度中级
时长59分
学习人数
综合评分9.77
231人评价 查看评价
9.9 内容实用
9.7 简洁易懂
9.7 逻辑清晰
  • 1:注册拦截器 2:相应的action引用拦截器
    查看全部
  • 新建拦截器的步骤: 1. 建立一个拦截器类继承自AbstractInterceptor类,并实现intercept方法 invocation.invoke()方法调用下一个拦截器,如果已经是最后一个拦截器,则执行目标action 2. 在strut的配置文件的package中注册拦截器,注册拦截器在action调用之前,在响应的action配置中,通过interceptor-ref标签来引用拦截器
    查看全部
  • 相关代码——(下): @struts.xml <struts> <package name="default" extends="struts-default" namespace="/"> <!-- 注册(定义)拦截器 --> <interceptors> <interceptor name="mytimer" class="com.imooc.interceptor.TimerInterceptor"></interceptor> </interceptors> <action name="timer" class="com.imooc.action.TimerAction"> <result>/success.jsp</result> <!-- 引用拦截器 --> <interceptor-ref name="mytimer"></interceptor-ref> </action> </package> </struts> @index.jsp <a href="timer">访问TimerAction</a><!-- 因为默认后缀为.action或没有,所以可以不用写timer.action,直接写timer --> 提示:实现一个拦截器主要过程: 第一步:实现一个拦截器的类,有两个方法,写一个拦截器的类继承自AbstractInterceptor或者实现Interceptor接口,并且在这个类里面实现对应的intercept方法。 第二步:在struts.xml中对拦截器进行注册(定义),并且在action中对拦截器进行引用。 【温馨提示:JavaSE/EE、SSH/SSM、Hybrid APP、JQ/JS/CSS3/H5等编程爱好者关注我,加我慕课好友,互相学习,共同进步!】
    查看全部
  • Struts架构剖析
    查看全部
  • (案例)开发权限验证的拦截器. 效果:后台有一个管理页面,要求用户必须是已登录的用户才能访问页面,如果用户未登录则不允许访问此页面. 1.首先创建一个管理页面(manager.jsp)与登录页面(login.jsp). 2.创建一个专门用来跳转到后台管理页面的action并配置,跳转方法返回的字符串是对应结果集中的manager.jsp页面,即管理页面.因此当直接访问此action时,就可以跳转到后台管理页面(此时不需要登录). 3.在login.jsp中需要定义表单,用于登录,此表单提交到一个用来处理登录信息的action来接收和处理表单的信息,在action中要获取session对象.action中有一个处理信息的login()方法,表单提交到此action时便执行此login()方法,在方法里通过if语句判断用户输入的用户名与密码是否正确. 如果都正确,便把登录信息保存在Session当中,即session.put("loginsuccess",username)),login()方法直接返回SUCCESS即可. 如果用户登录失败,则保存一个登录失败的信息进入session,即session.put("loginfalse","登录失败!").login()方法返回ERROR. 在strut.xml中配置此验证登录的action(跳转的action已配置),当login()方法返回SUCCESS时,即登录成功,则在<result>的路径返回后台管理页面.否则返回登录页面,即login.jsp. <action name="" class=""> <result>web-inf/manager.jsp</result> <result name="error">/login.jsp</result> </action>
    查看全部
  • 在执行action之前会执行一系列的拦截器
    查看全部
  • Action之前或者之后进行相关的处理--拦截器,多个拦截器组合称为拦截器栈 拦截器的执行 过程是一个递归的过程
    查看全部
  • 架构剖析
    查看全部
  • strust2的工作流程: 客户端通过HttpServletRequest向Tomcat容器发送请求---->过滤器(核心控制器StrutsPrepareAndexecuteFiler)----> 核心控制器访问ActionMapper来决定是否调用某个action(如果是jsp页面等则不会调用action)------> 核心控制权ActionProxy(action代理)---->ConfigurationManager(配置管理器)加载struts.xml找到要调用的action---> ActionProxy(action代理)创建Action invocation实例--->调用拦截器123————》拦截器执行完后才执行action 调用action业务处理方法 同时这个方法返回一个 字符串结果--->根据字符串去匹配视图--->再次倒序执行拦截器321 ----最后通过HttpServletRequest响应请求

    查看全部
  • 添加struts配置文件和jar包:右击工程名----MyEclipse----Add Struts Capp...--------选择版本-----next------再回去配置一下Struts.xml文件 下面是4个开发模式常用配置的简介--- <!-- 开启使用开发模式,详细错误提示 --> <!-- <constant name="struts.devMode" value="true"/>--> <!-- 指定每次请求到达,重新加载资源文件 --> <!-- <constant name="struts.i18n.reload" value="true"/>--> <!-- 指定每次配置文件更改后,自动重新加载 --> <!-- <constant name="struts.configuration.xml.reload" value="true"/>--> <!-- 指定XSLT Result使用样式表缓存 --> <!-- <constant name="struts.xslt.nocache" value="true"/>-->
    查看全部
  • strust2的工作流程: 客户端通过HttpServletRequest向Tomcat容器发送请求---->过滤器(核心控制器StrutsPrepareAndexecuteFiler)----> 核心控制器访问ActionMapper来决定是否调用某个action(如果是jsp页面等则不会调用action)------> ActionProxy(action代理)---->ConfigurationManager(配置管理器)加载struts.xml找到要调用的action---> ActionProxy(action代理)创建Action invocation实例--->调用拦截器123————》 调用action业务处理方法 同时这个方法返回一个 字符串结果--->根据字符串去匹配视图--->再次倒序执行拦截器321 ----最后通过HttpServletRequest响应请求
    查看全部
  • 1.定义拦截器 1.1.创建一个拦截器类继承自AbstractInterceptor类 1.2.实现intercept方法 eg: public String intercept(ActionInvocation invocation) throws Exception { //1.执行action之前 long start=System.currentTimeMillis(); //2.执行下一个拦截器,如果是最后一个拦截器,则执行目标action String result=invocation.invoke(); //3.执行action之后 long end=System.currentTimeMillis(); //4.花费的时间 long time=end-start; System.out.println("执行花费的时间: "+time+" ms"); return result; } 2.配置拦截器 <interceptors> <interceptor name="timeinterceptor" class="com.imooc.interceptor.TimerInterceptor"></interceptor> </interceptors> 3.引用拦截器 <interceptor-ref name="timeinterceptor"></interceptor-ref>
    查看全部
  • 拦截器栈
    查看全部
  • 客户端通过HttpServletRequest提交一个请求,这个请求通过一系列的过滤器,最终被Struts2核心控制器过滤到,核心控制器通过ActionMapper决定是否要调用某一个Action ,即用户是否请求某个Action,Action代理,通过配置管理器加载Strusts核心配置文件,加载Struts.xml ActionProxy创建Action实例(拦截器),调用拦截器,再调用action,调用action中的业务处理方法进行业务处理,同时业务返回一个结果,再次将拦截器反向执行,通过HttpServletResponse响应客户端请求
    查看全部
  • 在执行Action之前先拦截,统计当前时间,之后统计执行Action之后的时间 Action的执行时间=执行Action之后的时间-执行Action之前的时间
    查看全部

举报

0/150
提交
取消
课程须知
本课程主要讲解Struts2中的拦截器,小伙伴们需要对Struts2基本用法、 Action配置等相关知识有一定的基础。
老师告诉你能学到什么?
1、拦截器概念、作用 2、Struts2内建的拦截器 3、如何自定义拦截器 4、使用拦截器实现权限控制

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!