Spring Statemachine 1.0.0.M2 发布

发布 | Janne Valkealahti | 2015 年 6 月 2 日 | ...

我们很高兴地宣布 Spring Statemachine 1.0.0.M2 的第二个里程碑版本发布。

在此里程碑版本中,我们专注于区域 (regions) 和伪状态 (pseudostates) 的功能。区域为状态机的并行执行提供了更复杂的功能,而伪状态将为处理初始、终止、历史、选择、分叉和合并状态带来更多功能。

有人可能会问,什么是区域(region),它如何与状态机协同工作?区域是状态机的特例,其中正交区域由多个独立的状态机组成。这是一个难以理解的概念,因此我们做了一个示例来演示这个特性。

Tasks Statechart

上面的状态图展示了一个工作流中任务组如何执行的常规概念。执行多个任务意味着,如果其中一个任务失败,除非修复了失败原因,否则任务的执行将无法继续。这些失败可能由系统自动修复,或者状态机进入手动状态,需要用户干预。只有这样,状态机才能回到主状态,所有任务才能再次执行。

状态机的一个有用概念是历史状态。这个伪状态记录了状态机的最后一个活动状态,返回到该状态将恢复活动状态的配置。下面的示例展示了这一概念(我们知道洗衣机在恢复供电时能够从其最后一个状态继续工作),更详细的描述可以在参考文档中找到。

Washer Statechart

我们接下来将走向何方?在下一个里程碑中,我们将着手处理以下特性:

  • 提高稳定性和速度
  • 放宽对状态和事件使用枚举的要求。
  • 为状态机执行添加错误处理。
  • 更好地支持 Spring SpEL 用于动作和守卫。
  • 更好地以编程方式实例化状态机。
  • 引入使用“配方”的新概念,以简化状态机的用法。上面的任务示例是一个很好的例子,我们可以为常用的状态机用例提供配方。

#SpringOne 2GX 2015 即将到来!请尽快在 华盛顿特区的 SpringOne2GX 预订您的席位。超级早鸟价将于 6 月 12 日到期!这是了解最新动态和提供直接反馈的最佳机会。

#折扣

  • 超级早鸟价(节省 300 美元)将于 6 月 12 日到期。早鸟价(6 月 13 日至 8 月 14 日)可节省 150 美元。
  • 注册 4 人,即可获得第 5 张免费通行证。请联系我们提供您前 4 位注册者的姓名,以获取您的免费通行证代码(仅限会议入场)。
  • 校友请联系我们获取您的折扣代码(任何选项均可节省 150 美元)。

获取 Spring 新闻通讯

通过 Spring 新闻通讯保持联系

订阅

领先一步

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

了解更多

获得支持

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

了解更多

即将举行的活动

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

查看所有