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>
超级会员免费看
订阅专栏 解锁全文
109

被折叠的 条评论
为什么被折叠?



