2013-04-02 123 views
12

Spring Spring MVC上使用Spring Webflow的最重要理由是這樣的: 使用Spring MVC,工作流的不同階段需要在代碼中。即如果階段1成功結束,則在Controller中我們需要轉發到階段2的jsp,依此類推。在SPring MVC中,我們不能在xml文件中做到這一點。什麼時候使用彈簧網頁流在彈簧上mvc

但是在Spring webflow中,我們可以在不接觸代碼的情況下在xml文件中配置流程。

這是錯誤還是過度簡化?我看着http://forum.springsource.org/showthread.php?16393-Difference-between-Spring-MVC-Web-Framework-and-Web-Flow,並試圖對解釋進行總結。

回答

10

如果您的應用程序具有複雜的流程頁面,那麼需要將事件定義爲有限狀態機器然後使用Webflow。在購買Insurence,航班機票的網站上使用webflow是合理的。

否則使用正常的MVC框架(如Struts),webflow的學習曲線可能比其他MVC框架難點。

我會說下面提到的點是完全合理的。

The main point: webflow is a powerful controller. That's it. Use it when you need its power. use plain old controllers where you don't.

+1

謝謝。但我不問什麼時候起訴網絡流量以及何時起訴MVC。請評論我關於MVC和WebFlow之間差異的評論 – Victor

+0

http://spring.io/projects爲什麼春季項目頁面上沒有mvc項目? – Timeless

+0

@timeless:我可以看到Spring webflow ..它也是一個MVC –

2

http://forum.spring.io/forum/spring-projects/web/web-flow/7159-difference-between-spring-mvc-web-framework-and-web-flow

採取MVC是模型視圖控制器設計模式的實現,一個Webflow是「網絡流量」狀態機的實現。

Web流程位於彈簧MVC之上,並允許您定義複雜的導航流程。

很簡單;如果您有許多獨立的單頁,而這些單頁的功能並不多且不會互動,請使用普通的舊MVC。如果您有一組表示工作流程的頁面,請使用webflow對工作流程進行建模。如果你有兩個;混搭

+0

這似乎實際上是正確的答案。 –

+0

請引用不屬於您自己的答案。 http://forum.spring.io/forum/spring-projects/web/web-flow/7159-difference-between-spring-mvc-web-framework-and-web-flow – Ashwin

+0

Thankyou Ashwin爲了指出它 –