美文网首页
struct2Result

struct2Result

作者: xiongsirui | 来源:发表于2016-09-03 02:08 被阅读29次

    一、Struts2简介
    1、Servlet PK Filter
    2、半成品,提高开发效率
    3、Struts2=struts+WebWork
    二、搭建开发环境
    1、拷贝jar包
    2、在构建路径的顶端建立struts.xml的配置文件
    3、配置过滤器:(很多人会忘记)
    三、第一个案例:
    用户发出请求:地址以action或者不写。默认的
    编写配置文件:指定动作、动作类、动作方法、结果视图
    编写动作类和动作方法
    四、执行过程

    五、Struts2的配置
    1、配置文件和加载顺序
    default.properties struts-core-.jar org.apache.struts包
    struts-default.xml struts-core-
    .jar
    sturts-plugin.xml 插件中
    struts.xml 构建路径顶端 推荐
    struts.properties 构建路径顶端
    web.xml
    2、constant常量配置
    熟悉常用常量
    3、package元素
    name:唯一
    extends:struts-default
    namespace:小难度
    abstract:没有action子元素的包可以声明为抽象包
    4、action元素
    name:动作名称。用户用于请求
    class:动作类的全名。默认值:ActionSupport
    method:动作方法名称。默认值:execute
    六、动作类的书写
    1、POJO
    2、实现Action接口
    SUCCESS
    ERROR
    LOGIN
    INPUT
    NONE
    3、继承ActionSupport(推荐)
    七、动作方法
    public String XXX(){}
    不返回任何的视图,返回null或none字符串。
    八、动作的请求
    1、使用通配符* {1}
    2、DMI动态方法调用 action!m1
    默认是关闭的
    九、在动作中访问ServletAPI
    方式一:ServletActionContext静态方法(推荐)
    方式二:动作类实现XXXAware接口
    是由一个拦截器负责注入的,servletConfig

    一、结果视图
    a、局部视图:


    image.png

    b、全局视图:


    image.png

    多个动作对应同一个视图

    2、result元素的配置:
    属性:
    name:逻辑视图名称。它对应的是动作方法的返回值。默认值:success。
    type:到达目标的形式。默认值:dispatcher。转发。

    3、Struts2提供的结果类型(result type属性)
    在struts-default.xml中有定义


    image.png

    chain:用户转发到另外一个动作。


    image.png

    chain:用户转发到另外一个动作。


    image.png

    转发到不同名称空间中的另外一个动作


    image.png

    dispatcher:用于转发到另外一个JSP页面。


    image.png

    freemarker:用于转发到另外一个freemarker模板。(页面静态化)
    velocity:用于转发到另外一个velocity模板。
    httpheader:用于输出http协议的消息头。
    xslt:XML有关的样式
    redirect:用于重定向到另外一个JSP页面。
    redirectAction:用于重定向到另外一个动作。
    stream:用于文件下载(日后再讲。文件上传和下载)
    plainText:以纯文本的形式展现页面。输出源码。

    4、自定义结果视图
    随机验证码图片


    image.png

    2、自定义结果视图步骤


    image.png

    a、编写一个类,直接或间接实现com.opensymphony.xwork2.Result接口。一般继承org.apache.struts2.dispatcher.StrutsResultSupport类


    image.png

    b、声明结果类型,然后才能使用


    image.png

    c、使用


    image.png

    二、封装请求参数(特别重要)
    1、方式一:
    用Action动作类作为模型对象。


    image.png image.png

    2、方式二:动作类和模型分开(推荐)
    2.1动态参数注入:(请求参数,用户输入的)
    1、方式一:
    用Action动作类作为模型对象。


    image.png

    2、方式二:动作类和模型分开(推荐)
    模型:


    image.png

    动作:


    image.png
    3、方式三:(面试题,推荐)动作和模型分开
    模型驱动:ModelDriven
    模型:
    image.png

    原因:与Struts2的值栈有关
    该功能是由一个叫做modelDriven的拦截器完成的。


    image.png

    2.2静态参数注入


    image.png

    2.3动态参数和静态参数注入功能实现(知道)
    是由两个拦截器来完成。
    静态参数注入:staticParams
    动态参数注入:params

    三、学生的注册案例
    四、类型转换
    五、输入验证

    相关文章

      网友评论

          本文标题:struct2Result

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