XWork Core Concepts
xwork 基于许多核心概念,来帮助解释框架的运行原理。这核心改你南可以分为两部分,架构概念和术语。
- Architecture Concepts
- Terminology
Architecture Concepts
- Explain Command Driven Architecture (in general)
解释命令驱动架构(一般)- Explain the implementation in XWork
解释在xwork中的实现
Terminology
Actions
actions是为了响应一些请求,执行一些代码并返回结果的类。Actions实现了最低限度的单一的方法,execute(),它定义了框架调用的入口点,允许开发人员每次调用Action时执行的工作单元.
ActionContext
ActionContext 在Action调用期间以命名空间的形式提供对执行环境的访问。为每一个调用创建新的ActionContext,并允许开发人员在线程安全的情况下,访问和修改这些属性。ActionContext有许多可用的属性,并有框架设置为适当的值。在webwork2中,Actioncontext映射包装了一个底层HttpSession对象,这允许访问特定于环境的属性,而无需将核心框架绑定到特定的执行环境。有关更多信息,请参阅基础中的ActionContext。
Interceptors
在xwork中,拦截器是动态拦截Action调用的对象,它们为开发者提供了在execute before/after 定义代码的机会。它们也有能力阻止action的执行。拦截器为开发人员提供了一种将常见功能封装在可重用表单中的方法,该表单可应用于一个或多个操作。有关更多详细信息,请参阅拦截器。
Stacks
处理开发者将多个拦截器应用于一个action的情况,已经引入了堆栈,堆栈是一个拦截器的有序列表,或者其他堆栈的有序列表,当actions被调用的时候被应用。可以集中拦截器的声明并提供配置多个操作的便捷方式。
Results
结果是表示Actions 执行状态的字符串常量。一组标准的结果默认定义为:error, input, login, none and success。当然,开发人员可以自由创建他们自己的结果来表明更多的应用程序特定情况。
Result Types
结果类型是确定执行Action并返回结果后发生什么的类。开发人员可根据其应用程序或环境的需要自由创建自己的结果类型。在WebWork 2中,已经创建了Servlet和Velocity结果类型来处理Web应用程序中的呈现视图。
Packages
Packages 是一种组织actions,results,result types, 拦截器,堆栈 成为一个逻辑单元里阿共享一个配置,软件包类似于对象,因为它们可以扩展并具有被“子”软件包覆盖的单独部分。
ValueStacks
ValueStack是一个建立在OGNL核心之上的堆栈实现。OGNL表达式语言可用于遍历堆栈并检索所需的对象。OGNL表达式语言提供了许多附加功能,包括:自动类型转换,方法调用和对象比较。有关更多信息,请参阅OGNL网站。
Components
XWork提供了ComponentManager接口(以及DefaultComponentManager类中的相应实现)
网友评论