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

Struts2拦截器浅析

难度中级
时长59分
学习人数
综合评分9.77
231人评价 查看评价
9.9 内容实用
9.7 简洁易懂
9.7 逻辑清晰
  • Struts2中大多数核心功能是通过拦截器实现的,每个拦截器完成某项功能。例如:数据转移。类型转换,数据校验 拦截器方法在Action执行之前或者之后执行。 拦截器栈,相当于多个拦截器的组合。 拦截器工作原理: 拦截器的执行过程是一个递归的过程, 过滤器的执行流程和拦截器几乎一样
    查看全部
  • Struts2内建拦截器: params拦截器 --负责将请求参数设置为Action属性 statisParams拦截器 ---将配置文件中action元素的子元素param参数设置为Action属性 servletConfig拦截器 ---将源于Servlet Api的各种对象注入到Action,必须实现对应接口,比如HttpServletRequest fileUpload拦截器 --对文件上传提供支持,将文件和元数据设置到对应的Action属性 exception拦截器 ---捕获异常,并且将异常映射到用户自定义的错误页面 validation拦截器 ---通过验证框架进行数据验证 开发权限验证拦截器 在Action中创建session对象,获取表单提交的用户信息,在拦截器类中通过判断session对象中有没有用户信息判断用户是否已 登录,如果登录了才能访问后台管理页面
    查看全部
  • Struts2中大多数核心功能是通过拦截器实现的,每个拦截器完成某项功能。例如:数据转移。类型转换,数据校验 拦截器方法在Action执行之前或者之后执行。 拦截器栈,相当于多个拦截器的组合。 拦截器工作原理: 拦截器的执行过程是一个递归的过程, 过滤器的执行流程和拦截器几乎一样 自定义拦截器: 方式一:实现Interceptor接口(不常用) --void init():初始化拦截器所需资源 --void destroy() 释放在init()中分配的资源 --String intercept(ActionInvocation ai)throws Exception //进行真正意义上的拦截操作 实现拦截器功能 利用ActionInvocation参数获取Action状态 返回result字符串作为 逻辑视图 方式二:继承AbstractInterceptor类 --提供init()和destroy()方法的空实现 --只需要实现intercept方法即可 实现步骤: 1.创建拦截器 2.在配置文件struts.xml中定义拦截器并引用它 String result=invocation.invoke();//调用ActionInvocation中的下一个拦截器,如果是最后一个,就执行目标Action
    查看全部
  • 默认拦截器
    查看全部
  • 在配置文件中配置拦截器
    查看全部
  • Struts2中大多数核心功能是通过拦截器实现的,每个拦截器完成某项功能。例如:数据转移。类型转换,数据校验 拦截器方法在Action执行之前或者之后执行。 拦截器栈,相当于多个拦截器的组合。 拦截器工作原理: 拦截器的执行过程是一个递归的过程, 过滤器的执行流程和拦截器几乎一样
    查看全部
  • struts的执行流程: 1用户发送请求到服务器,服务器通过ActionMapper执行一系列的过滤器,其中包括struts的核心过滤器StrutsPrepareAndExecuteFilter 2.ActionProxy(Action代理)通过ConfigurationManager(配置管理器)加载struts的核心配置文件struts.xml,找到需要调用的action返回给action代理 3.ActionProxy会创建一个Action Invocation实例,其中包含一个或者多个拦截器,依次执行,然后才是执行Action,Action返回一个结果决定跳转到哪个视图或者是action(result的type属性决定)。然后依次反向执行拦截器,之后将结果反馈给用户
    查看全部
  • 客户端通过httpservletrequest向servlet容器,也就是tomcat提交一个请求,这个请求会经过一些列的过滤器,如ActionContentClearUp过滤器,最终被struts核心过滤器过滤,也就是FilterDispatcher.从struts2.1.3版本以后struts的核心控制器发生了变化,变成了PrepqreAndExecuteFiletr,核心过滤器过滤以后,调用访问ActionMapping,决定是否调用某一action,如果用户请求的是jsp页面或者是其他资源,不会调用某一action,如果决定调用某一action,ActionMapping会将控制权委派给ActionProxy,也叫action代理,此时action代理会通过一个Configuration Manager也就是配置管理器对象加载struts核心配置文件,也就是struts.xml.如果在struts.xml找到需要创建的action,ActionProxy会创建一个Action Invocation实例,action Invocation包括一些列的拦截器和action,先顺序执行一些列的拦截器,然后执行action处理,返回一个结果,通过result返回一个视图或者调用另外某个action.当返回这个视图以后,将之前执行过的拦截器反向执行一遍,然后通过response响应客户端的请求. struts的执行流程: 1用户发送请求到服务器,服务器通过ActionMapper执行一系列的过滤器,其中包括struts的核心过滤器StrutsPrepareAndExecuteFilter 2.ActionProxy(Action代理)通过ConfigurationManager(配置管理器)加载struts的核心配置文件struts.xml,找到需要调用的action返回给action代理 3.然后执行Action Invocation,其中包含一个或者多个拦截器,依次执行,然后才是执行Action,Action返回一个结果决定跳转到哪个视图或者是action(result的type属性决定)。然后依次反向执行拦截器,之后将结果反馈给用户
    查看全部
  • 默认拦截器栈
    查看全部
  • 拦截器工作原理
    查看全部
  • struts 2 框架解析
    查看全部
  • 引用拦截器栈
    查看全部
  • 2:注册拦截器,及拦截器栈 然后在引用拦截器栈
    查看全部
  • 定义权限控制的拦截器
    查看全部
  • 常用的拦截器
    查看全部

举报

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

微信扫码,参与3人拼团

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

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