原因集成的Spring Web流与Spring MVC的(Reason to integrate S

2019-09-30 18:11发布

为什么(在什么情况下)我们需要的Webflow春天与Spring MVC集成? 这两个框架用于创建Web的应用程序,我看不到任何一点,为什么我们将整合它们。 我将不胜感激,如果有人可以澄清我。

Answer 1:

我们结合两者。 网络流量的多步骤的活动,它没有任何意义跳进一个过程中间,和单步活动纯MVC控制器。 事情你可能书签个别。

例如,预约调度的应用程序,“寻找我的任命”可能是接受识别信息的单个控制器。 “做一个新的约会”是一个流程,并选择一个地点,日期,时间的多个步骤,确认预约等。



Answer 2:

这确实是晚,但我没有看到一个满意的答复这个问题,想和大家分享我在最近的一个项目,我觉得比Spring Web Flow的方式被严格束缚去春来的意见,更好的尝试的方法不必要添加到现有的XML负载。 我创建了采用了棱角分明的js与Spring MVC一个SPA(单页应用程序)。 在角JS我没有使用路由器或状态,而我创建像下面的控制器内的格

在服务器端捕获所有可能的转变,从一个帧(我指的是在SPA特定的屏幕)到另一个我创建的使用MVEL规则树。 所以,在数据库中我有哪些存储规则树的每一帧的结构。 在MVEL表达式的数据是由各种服务的每个操作调用设置。 因此,对任何操作遵循以下步骤。

1)验证的动作。

2)调用的各种服务。

3)捕获从这些服务中的数据,并与用户现有的数据合并。

4)进料该拍摄数据转换成规则集合与当前帧的细节沿着每个帧。

5)运行树WRT的规则,以当前帧,并获取其输出。

6)如果只有一个过渡则认为是最终的过渡。 如果有2个转变,一个是默认,然后忽略默认的过渡,并使用其它过渡。

7)返回过渡到角度控制器的模板名称,并设置页面变量的值在控制器的范围。

使用这种方法,我所有的服务所要做的就是在不同的数据字段存储数据WRT特定的操作。 如果其他的Web流或者任何复杂的流程定义(如在Spring的Web流量中定义的)条件,不要求所有复杂。 该MVEL规则引擎管理的一切,因为它是数据库中的所有可能,而无需在服务器重新启动而改变。

我相信,这MVEL通用的方法是一种灵活的做法,全面处理一个令人费解的流动问题,而不使应用程序代码的混乱或增加额外的不必要的XML文件。



Answer 3:

如果您的应用程序具有复杂流程页面,这就需要事件被定义为有限状态机,然后使用一个Webflow。 这将是合理使用的Webflow的网站,你买保险,机票。 Web Flow的条件是这样的:

There is a clear start and an end point.
The user must go through a set of screens in a specific order.
The changes are not finalized until the last step.
Once complete it shouldn't be possible to repeat a transaction accidentally


文章来源: Reason to integrate Spring Web-flow with Spring MVC