2.Struts2的Action接口和 ActionSuppor类

本文详细介绍了Struts2框架的核心组件ActionSupport的功能及使用方法,包括如何实现Action接口、动态方法调用、请求URL解析流程等内容,并探讨了参数获取的不同方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 .   ActionSuppor是Action的子类

.    action类默认实现Action接口,可以不写 implements Action

            public class ActionSuppor implements Action, Validateable,ValidationAware,Serializable{}
            // Validateable 用于实现验证的接口,TextProvider 文本支持,Serializable
            //一个Action可以实现Action接口。也可以继承ActionSupport.建议继承ActionSupport。
            //继承ActionSupport后里面的execute方法可实现,也可以不实现。因为ActionSupport已经实面execute方法并返回"success";

 .   Servlet是单例多线程的,而Action是多例的。每次请求重新创建此类的实例。

 .   execute方法,是struts2默认调用的方法。它必须拥有一个字符串类型的返回值。
     返回success字符串,将在<result/>中查到<result name="success">的元素。
     如果在配置<result/>时没有指定name属性,则默认为name=success.
     在继承了ActionSupport之后,也可以直接使用SUCCESS静态常量。此静态常量值,在Action接口中定义。

 .   动态方法调用:
     调用action类中其它方法: 使用"!"
     //例如: http://localhost:8080/day02/pay!save

 .   action的url搜索顺序:
     http://...8080/project/aaa/bbb/ccc/hello.action
     首先查找aaa/bbb/ccc/的namespace。如果没有则查找aaa/bbb/,如果再没有则查到aaa/直接到到为止,
     如果都没有找到则抛出404的异常信息

 .   action的后缀:
     .action是struts的默认后缀
     可以修改struts-default.properties文件,修改它的后缀名。
     但建议不要修改此文件,可以将此配置在struts文件中声明以覆盖struts-default.properties的配置。

 .   在Action类中获取参数的方式:  

    1)属性驱动 - 就是将所有要接收的参数声明成Action的成员变量;    //使用action类的属性接收用户输入    //使用领域对象接收用户输入

      2)模型型驱动 - 实现一个接口 (ModelDriver);    //使用ModelDriven的方式接收用户输入  

    3)使用原生的ServletAPI  

    4)使用注入的ServletAPI

转载于:https://www.cnblogs.com/ksfm/archive/2013/02/13/2910833.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值