java - 'pure' MVC 实现有多有用?

标签 java model-view-controller jakarta-ee struts2

我在一家提供定制“CRM”类软件的公司工作。我们目前正在重新设计/重新开发该软件,希望它看起来更现代,并且更容易为 future 的客户开发和定制。目前,定制每个新应用程序需要很长时间。

有一种假设认为它花费这么长时间的原因是因为“ View ”层中存在大量的业务逻辑。在某种程度上我可以保证这是真的,但症状并不总能可靠地指出原因。有人建议,如果我们只是将业务逻辑移动到 Controller 层并使用纯 View (我们使用 java J2EE 和 struts)来实现 struts 标签,而不是直接在 jsp 上调用 bean 层和迭代对象等等。

在我开始倡导我们继续推进这项工作之前,我想了解一下其他人的想法。 MVC 的“纯”实现(特别是强调解耦 Controller 和 View )是否提供了更清晰、更易于开发和更改的代码库?

感谢大家的意见 - 帮助很大

最佳答案

您的目标应该是将您的业务逻辑集中在一个地方。根据我的经验,如果您能做到这一点,您的代码库将更易于开发、维护和更改。

模型- View - Controller 是达到这一点的一种方式,尽管在经典 MVC 中,业务逻辑位于(域)模型中,而应用程序逻辑位于 Controller 中。

应用逻辑:如果用户的下一次检查日期在一周内(或逾期),则显示“计划检查”屏幕,否则显示“检查历史”屏幕。

业务逻辑:以前未通过检查的餐厅需要每六个月检查一次,海鲜餐厅必须每年检查一次,所有其他餐厅必须每两年检查一次。考虑到这家餐厅的上次检查,他们的下一次检查何时到期?

关于java - 'pure' MVC 实现有多有用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2475136/

相关文章:

jakarta-ee - EJB 中的异步调用方法

ios - iOS 中的 Model View Controller 示例

mysql - 从 web2py 中的 Controller 更新记录

eclipse - 使用 Macbook PRO 在服务器 tomcat 上运行 servlet 时出现 404 错误

java - 是否值得在方法中使用位运算符?

java - Sonar Qube 5.3 : Configure number of lines of source code displayed in Component Viewer

java - ReadyState 保持为空

java - 确定打开两个文件时找不到哪个文件

laravel - Laravel 所有请求中的附加属性

java - Twitter4j getOAuthRequestToken() 方法引发 ILLEGALSTATEEXCEPTION