Spring Web Flow 1.0

发布 | Keith Donald | 2006年6月10日 | ...

 

产品负责人
Keith Donald,SpringSource
Erwin Vervaet,Ervacon
 
Spring Web Flow 是下一代 Java Web 应用程序控制器框架,允许开发人员将用户操作建模为可在任何环境中运行的高级模块(称为流)。  该框架提高了生产力和可测试性,同时提供了强大的解决方案来强制导航规则和管理应用程序状态。  

全局概览

Spring Web Flow 允许开发人员构建可重用、自包含的控制器模块,这些模块称为流。流定义了用户对话,它响应用户事件来驱动应用程序代码的执行,以完成业务目标。  考虑一下用于与用户执行搜索流程的流定义的图形视图。
Seach Flow 
上述流等通过丰富的领域特定语言 (DSL) 以声明方式定义。  该语言的 XML (XSD) 形式最受用户欢迎。  一旦定义,流就可以独立测试,可以作为子流嵌入到其他流中,并且可以部署到包括 Java EE Servlet 和 Portlet (JSR 168) 在内的多个环境执行,而无需更改。

产品亮点

Spring Web Flow 包含许多创新的功能,深受用户喜爱。这些功能包括能够
  • 将应用程序任务(例如搜索过程)的所有控制器逻辑集中在一个地方定义,而不是分散在多个地方。
  • 将流组合在一起,从简单部分创建丰富的控制器模块。
  • 使用自然、面向对象的线性编程模型强制执行严格的用户导航规则,而无需编写冗长的 if/else 块。
  • 在流程执行期间分配的内存,在执行结束或过期时自动清理自身。
  • 使用您选择的基类 Web 框架在 Servlet 环境中部署流以供执行。  Spring Web Flow 提供与领先的 Web 框架 Struts、Spring MVC 和 Java Server Faces 的便捷集成。
  • 更改 Web 框架,例如从 Struts 更改为 Spring MVC,而无需更改流定义。
  • 完全更改环境,例如从 JUnit 测试更改为 Portlet,而无需更改流定义。
  • 在开发时动态演进应用程序的导航规则,而无需容器重启。
  • 自动获得浏览器按钮支持(后退、前进、刷新),无需自定义编码。
  • 将任务数据存储在四种受管理的作用域之一中:请求、闪存、流和会话;每种都有其独特的语义。
  • 独立测试流,无需容器。  确保您的应用程序控制逻辑在部署前正常工作。
  • 使用 Spring IDE 2.0 图形化地可视化和编辑您的流导航逻辑。

入门

开始使用 Spring Web Flow 的最佳方法是阅读 Erwin 的实用介绍 并 walkthrough 示例应用程序。  我们建议从一开始就回顾所有示例,并根据需要补充 参考手册 材料。发布版附带十个示例应用程序,每个应用程序都演示了一组独特的功能。  示例是
  1. Phonebook - 演示大多数功能的原始示例(包括子流)
  2. Sellitem - 演示了带条件转换、流执行重定向、自定义文本字段格式和延续的向导
  3. Flowlauncher - 演示了启动和恢复流的所有可能方式
  4. Itemlist - 演示了 REST 风格的 URL 和内联流
  5. Shippingrate - 演示了 Spring Web Flow 与 Ajax 技术一起使用
  6. NumberGuess - 演示了有状态 Bean、评估操作和“单键”流执行重定向。
  7. Birthdate - 演示了 Struts 集成
  8. Fileupload - 演示了 multipart 文件上传、设置操作和闪存作用域
  9. 电话簿-Portlet - Portlet 环境中的电话簿示例(请注意流程定义没有改变)
  10. Sellitem-JSF - JSF 环境中的 sellitem 示例
  11. Booking-Faces - 更全面的 Spring Web Flow + JSF 应用程序。
所有示例项目都是 Spring IDE 项目,可以直接导入到 Eclipse 中作为“动态 Web 项目”,也可以在 Eclipse IDE 中使用 Eclipse Web Tools 进行部署。
 
要深入全面地了解 Spring Web Flow 的所有功能,最好的方法是阅读 Working with Spring Web Flow

当前发行说明

  • Spring Web Flow 1.0.x 是久经考验的软件,适用于生产环境。
  • Spring Web Flow 可运行在 Java SE 1.3 或更高版本,以及 Java EE 1.3 (Servlet 2.3, Portlet 1.0) 或更高版本上。  Spring Web Flow 可运行在所有主流应用程序服务器平台上。
  • Spring 1.x 系列需要 Spring 1.2.7 或更高版本,Spring 2.x 系列需要 Spring 2.0 或更高版本。
  • Struts Classic (1.2.9)、Spring MVC 和 JSF 集成是开箱即用的。
  • 1.0 版本意味着公共 API 和 XSD 向后兼容性将在整个 1.x 系列中得到保留。

即将发布的发行说明

  • Spring Web Flow 2.0 是该框架的下一个主要版本,侧重于增强集成和易用性。
  • Spring Web Flow 2.0 最终版预计于 2008 年 4 月发布。

社区

  • 加入我们的 论坛,进行关于 Spring Web Flow 用法和架构的活跃讨论。  这是参与 Web Flow 社区的最佳方式。

重要资源

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

VMware 提供培训和认证,助您加速进步。

了解更多

获得支持

Tanzu Spring 提供 OpenJDK™、Spring 和 Apache Tomcat® 的支持和二进制文件,只需一份简单的订阅。

了解更多

即将举行的活动

查看 Spring 社区所有即将举行的活动。

查看所有