美文网首页
二、struts2 入门

二、struts2 入门

作者: cqzhangjian | 来源:发表于2017-12-28 08:29 被阅读0次

1.struts.xml 配置文件详解

    <!-- package 标签:包的概念,在该标签中可以定义多个Action 动作类
                name 属性 :可以随便定义,但是有点意义。如果一个 struts.xml 文件中有多个 package 标签 ,name 属性对应的值不能重复
                extends 属性 : 一般继承 struts-default,因为该包定义了struts2 大量的配置,比如拦截器(使得请求进行预处理)
                namespace 属性 :定义 url 地址的一部分,它是以 / 开头
                
        action 标签 :关联自定义的 动作类的
            class 属性:设置 动作类的全路径
            name 属性 :定义 url 地址的一部分,它不能以 / 开头,必须配置指
            method 属性 : 外部通过 aciton 中的name值来作请求,指定对应的方法来处理该请求,如果不配置该属性,就会默认找 execute方法执行
            
        result 标签 : 逻辑视图 物理视图关联,并且引导视图进行跳转,默认引导方式是转发
             type 属性: dispatcher 转发 针对视图的转发
                      redirect 重定向,针对的 视图的重定向
                      
                      redirectAction 重定向,针对的是动作重定向
                      chain 转发:针对动作类的转发
                    
             name 属性:关联逻辑视图
        constant 标签,配置 struts2 相关的信息 常量配置 key/value
                kye:struts.action.extension 表示配置动作类的后缀名,如果不配,默认就是 .action 或者 不写
                kye:struts.devMode 表示开启开发者模式,提供更友好更详细的信息,也自动开启了国际化资源加载功能以及自动加载struts.xml文件的功能
     -->

2.拦截器

拦截器一般是 web 框架中的概念,不是 Sun 定义的 概念。
拦截器(Interceptor)的作用跟 sun定义的 Filter 作用差不多

  • Filter : Sun 规范的一套接口,请求的预处理机制

  • Interceptor :表现层框架(Struts1,Struts2,springmvc ) 规范的一种技术(拦截器)

  • Filter :可以拦截各种类型的请求:.html .css .js .jsp servlet请求 、 动作请求等

  • Interceptor:只能拦截处理动作类请求

Struts2 默认使用的拦截器:

     <interceptor-stack name="defaultStack">
                <interceptor-ref name="exception"/>
                <interceptor-ref name="alias"/>
                <interceptor-ref name="servletConfig"/>
                <interceptor-ref name="i18n"/>
                <interceptor-ref name="prepare"/>
                <interceptor-ref name="chain"/>
                <interceptor-ref name="scopedModelDriven"/>
                <interceptor-ref name="modelDriven"/>
                <interceptor-ref name="fileUpload"/>
                <interceptor-ref name="checkbox"/>
                <interceptor-ref name="datetime"/>
                <interceptor-ref name="multiselect"/>
                <interceptor-ref name="staticParams"/>
                <interceptor-ref name="actionMappingParams"/>
                <interceptor-ref name="params"/>
                <interceptor-ref name="conversionError"/>
                <interceptor-ref name="validation">
                    <param name="excludeMethods">input,back,cancel,browse</param>
                </interceptor-ref>
                <interceptor-ref name="workflow">
                    <param name="excludeMethods">input,back,cancel,browse</param>
                </interceptor-ref>

  • 自定义拦截器步骤
    • 自定义拦截器: struts2 框架提供了 定义拦截器的接口。Interceptor 接口、继承 AbstractInterceptor抽象类
public class MyInter extends AbstractInterceptor {
  • 申明自定义的拦截器
    <interceptors>
            <!-- 申明自定义的拦截器 -->
            <interceptor name="my1" class="com.xingxue.struts2.web.interceptor.MyInter"></interceptor>
        </interceptors>
  • 配置拦截器拦截具体的动作类
    <!-- 全局配置拦截所有动作类:struts2中的默认的拦截器就失效-->
        <default-interceptor-ref name="my1"></default-interceptor-ref>

注意:应该这样配置

    <interceptors>
            <!-- 申明自定义的拦截器 -->
            <interceptor name="my1" class="com.xingxue.struts2.web.interceptor.MyInter"></interceptor>
            <!-- 申明一个拦截器栈:一个容器,可以配置都个拦截器 -->
            <interceptor-stack name="myStack">
                <interceptor-ref name="defaultStack"></interceptor-ref>
                <interceptor-ref name="my1"></interceptor-ref>
            </interceptor-stack>
        </interceptors>
        
        <!-- 全局配置拦截所有动作类-->
        <default-interceptor-ref name="myStack"></default-interceptor-ref>

3.上传下载 详看代码

相关文章

  • Struts2学习笔记(第一天)

    介绍struts2框架 struts2快速入门: struts流程图 模仿struts2流程完成入门程序: str...

  • 【Java中级】14.0 SSH之Struts2框架(一)——基

    1.0 Struts2知识路线 Struts2的概述、Struts2的入门、Struts2常见的配置、Struts...

  • Struts2_day01

    Struts2_day01 Struts2课程安排 第一天 struts2 入门 2017年10月27日 第二天 ...

  • Struts2_day02

    Struts2_day02 Struts2课程安排 第一天 struts2 入门 2017年10月27日 第二天 ...

  • Struts2框架_快速入门

    一、 Struts2概述 三层结构体系(来自于JavaEE规范): 二、 入门案例_Hello World 1. ...

  • java51(Struts2--02执行过程与配置)

    入门案例的执行过程: Struts2内部执行过程: Struts2配置文件加载顺序: default.proper...

  • 二、struts2 入门

    1.struts.xml 配置文件详解 2.拦截器 拦截器一般是 web 框架中的概念,不是 Sun 定义的 概念...

  • Struts基础知识

    下一篇:struts2核心文件 Struts基础知识 参考: Struct2 入门(Struts2学习系列一)My...

  • Struts2 使用

    参考:1、SSH的jar包详解2、struts2 从2.3升级至2.5要注意哪些问题?3、struts2入门教程一...

  • Struts2上

    Struts2第一部分 学习思路 入门案例先敲熟(重点) 独立使用struts2框架完成登陆案例 知识点: str...

网友评论

      本文标题:二、struts2 入门

      本文链接:https://www.haomeiwen.com/subject/kdkmgxtx.html