8、Struts 2 动作开发:ActionSupport的强大功能

Struts 2 动作开发:ActionSupport的强大功能

1. 智能默认机制与ActionSupport类

在Struts 2中,结果元素的默认名称属性是SUCCESS常量。当我们的结果没有定义自己的名称时,它会继承这个默认值,并由动作自动选择。这是许多智能默认机制的通用模式。

我们无需自己实现Action接口,因为框架提供了可以借用的实现。接下来要介绍的ActionSupport类,是一个便利类,它提供了Action接口和其他几个有用接口的默认实现,比如数据验证和错误消息本地化等功能。虽然框架不强制使用这个类,但在学习框架时使用它是个好主意,实际上,除非有特殊原因,否则使用它通常都是明智的选择。

ActionSupport类遵循“支持”类的传统,为几个重要接口提供了默认实现。如果我们的动作类继承了这个类,就可以自动使用这些实现,这使得该类值得我们去学习。而且,这个类的实现还展示了动作如何与拦截器协作,以实现对常见任务的强大可重用解决方案。在这种情况下,验证和文本本地化服务是通过拦截器和接口的组合来提供的。拦截器控制服务的执行,而动作实现拦截器调用的方法的接口。

2. 基本验证机制

Struts 2提供了丰富且高度可配置的验证框架,而ActionSupport则提供了一种快速的基本验证形式,在很多情况下都很有用。这也是一个很好的案例,展示了如何通过使用拦截器和接口,将验证等横切任务从动作的执行逻辑中分离出来。

典型的模式是,拦截器在控制给定任务的执行时,可能会通过调用动作暴露的方法与动作进行协调。通常,这些方法是该动作实现的特定接口的一部分。在我们的例子中,ActionSupport实现了两个接口,与默认栈中

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值