7、Struts 2 动作开发全解析

Struts 2 动作开发全解析

1. Struts 2 动作的数据传输对象角色

在 Struts 2 中,动作不仅可以通过简单的 JavaBeans 属性来使用,还存在其他一些将动作作为数据传输对象的技术。动作可作为集中的数据传输对象,使应用程序数据在框架的所有层都可用。

对于有 Struts 1 开发经验的开发者来说,将动作作为数据传输对象可能会引发一些担忧。在 Struts 1 中,一个给定的动作类只有一个实例。在多线程环境(如 Web 应用程序)中,将数据存储在实例字段中会有问题。而 Struts 2 通过为每个映射到该动作的请求创建一个新的动作实例来解决这个问题,这一根本差异使得 Struts 2 对象能够作为每个请求的专用数据传输对象。

2. 动作返回控制字符串以进行结果路由

动作组件的最后一项职责是返回一个控制字符串,用于选择要渲染的结果。与之前的框架将路由对象传递到动作的入口方法不同,返回控制字符串消除了对这些对象的需求,使动作签名更简洁,并且减少了与特定路由代码的耦合。返回字符串的值必须与声明式架构中配置的所需结果的名称相匹配。

例如,HelloWorldAction 返回字符串 “SUCCESS”,在 XML 声明中,SUCCESS 是结果组件之一的名称:

<action name="HelloWorld" class="manning.chapterOne.HelloWorld">
    <result name="SUCCESS">/chapterTwo/HelloWorld.jsp</result>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值