首先,我不太确定我的案例是否适合使用弹簧状态机。
这是我的情况:
我有一个大的可变对象和一组逻辑单元,它们将以一定的顺序操纵这个可变对象。
对于正常流程: A.exec -> B.exec -> C.exec -> Done
对于从 A 抛出异常的不良流程:A -> 错误 -> 完成(绕过 B 和 C)
对于从 B 抛出异常的错误流:A -> B -> 另一个流
我猜 A、B、C 可以建模为一个状态,而从 A 到 B 的转换可以使用一个动作来执行真正的商业逻辑。
如何从 A 捕获可能抛出的异常并将目标更改为另一个状态而不是 B?
谢谢
莱昂