Struts2 的 action

action: 应用程序可以完成的每一个操作. 例如: 显示一个登陆表单; 把产品信息保存起来
Action类: 普通的 Java 类, 可以有属性和方法, 同时必须遵守下面这些规则:
    1.属性的名字必须遵守与 JavaBeans 属性名相同的命名规则. 属性的类型可以是任意类型. 从字符串到非字符串(基本数据库类型)之间的数据转换可以自动发生
    2.必须有一个不带参的构造器
    3.至少有一个供 struts 在执行这个 action 时调用的方法
    4.同一个 Action 类可以包含多个 action 方法.
    5.Struts2 会为每一个 HTTP 请求创建一个新的 Action 实例
创建Action有三种方式:
    1.Action可以是一个普通的类, 不需要实现任何接口或继承任何类。
    2.Action可以实现Action接口
    3.不过最常用的是从ActionSupport继承,好处在于可以直接使用Struts2封装好的方法
Action的配置,action完整的属性如表所示:
Struts2 的 action_第1张图片

Action配置中的各项默认值

        
            
			/ActionIntroduction.jsp
        
 

1>如果没有为action指定class,默认是ActionSupport。
2>如果没有为action指定method,默认执行action中的execute() 方法。
3>如果没有指定result的name属性,默认值为success。

可以用动态的方法调用,下面通过一个例子来体现
第一步:导包
第二步:在web.xml中配置

        struts2
        org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
    

    
        struts2
        /*
    

第三步:jsp界面
 
  

Struts2 的 action_第2张图片
然后struts.xml中如下配置
这个第一种 method

Struts2 的 action_第3张图片
然后再 类中,写add方法
Struts2 的 action_第4张图片
最后跳转到结果页面
第二种DMI
Struts2 的 action_第5张图片 Struts2 的 action_第6张图片

第三种 wildcard
 传括号里边的值给xml,*Action,如果点的加 则是addAction,则method接受到的是*对应的add方法
Struts2 的 action_第7张图片
Struts2 的 action_第8张图片

还有一种 注入参数
直接再xml中配置需要的值,然后输出

你可能感兴趣的:(Struts2)