对于一个相对简单的应用程序,是否可以使用 Webflow 来减少创建表单控制器的需要?好吧,当然可以,但我想我要问的是:如果我的目标是减少我编写的代码量,我可以并且应该为所有控制器/视图逻辑使用 Webflow 编写整个应用程序?
我在(糟糕的)Webflow 文档中苦苦挣扎,我想知道它是否值得,或者我是否应该坚持使用常规的 MVC。
对于一个相对简单的应用程序,是否可以使用 Webflow 来减少创建表单控制器的需要?好吧,当然可以,但我想我要问的是:如果我的目标是减少我编写的代码量,我可以并且应该为所有控制器/视图逻辑使用 Webflow 编写整个应用程序?
我在(糟糕的)Webflow 文档中苦苦挣扎,我想知道它是否值得,或者我是否应该坚持使用常规的 MVC。
Web Flow 的用例是解决涉及跨多页导航(页面流或向导)的控制器逻辑的问题。如果您不必将表单拆分到多个页面(或需要几个小表单来参与单个事务),您可能不需要 Pageflow。
然而,大多数应用程序确实需要这个。除了简单的 CRUD 之外,任何东西都会受益。
页面流为数据提供了自然缓存,并且可以解决使用后退按钮导航和多个框架/选项卡时所涉及的问题。
如果您正在考虑如何存储需要比单个请求更长时间的数据(常见但被误导的观点是存储在 HttpSession 中),那么您肯定会从 Web Flow 中获得一些东西。如果您没有做类似的事情并在请求范围内处理所有内容,那么您很可能不需要 Web Flow。
更新: Web Flow 可以消除对专用控制器类的需求,以按照预定义的工作流程完成页面转换/表单更新的路径。如果您不需要这样做,您只需使用 MVC 就可以为自己节省大量配置/复杂性。
SpringMVC 和 Spring WebFlow 可以在适当的地方一起使用——这没有什么奇怪的。
如果您有一个简单的用例,并且您认为可以使用 SpringMVC 轻松实现它,那么这可能是正确的选择。
注意:您也可以在 WebFlow 中实现这一点,这既不好也不坏。
如果您有复杂的向导逻辑和状态管理要求,那么 WebFlow 非常棒,而且您还可以免费获得许多其他功能,例如事务和持久性支持(第 2 版)。