无法理解Spring MVC中的模型和控制器

时间:2015-04-07 19:38:11

标签: java spring spring-mvc

我读的帖子越多,我就越困惑....

春季MVC:

我得到的是这个。 View只是你的jsp。 Dispatcher Servlet是您的控制器。它处理请求并指向适当的操作。然后@Controller(某个类)也是你的控制器,但是在同一个类(从教程点)你可以拥有@modelattribute这是你的模型对象。首先,我认为目的是分离模型和控制器(这就是我们使用MVC的原因),那么为什么您的业务逻辑可以与控制器属于同一类?那么Spring中的模型和控制器到底是什么?你有两个控制器吗? (@Controller类和调度程序servlet)spring中的模型来自@modelattribute对象或来自业务逻辑的bean?

1 个答案:

答案 0 :(得分:0)

视图不仅仅是JSP,而是任何视图技术,例如JasperReports

  

我认为目的是将模型和控制器分开(这就是原因   我们使用MVC)为什么你的业务逻辑可以和同一个类一样   你的控制器?

您的业务逻辑应该进入服务类,这些服务类由控制器引用。您可以在实体本身中进行一些简单的验证。

  

那么Spring中的模型和控制器究竟是什么?

模型是您的视图可能需要的任何数据的地图。它可以包含实体,或表单备份对象或字符串或任何您想要的内容。

DispatcherServlet是您的控制器,而不是您的常规控制器。

Controller是一个具有Handler方法的类,由于HTTP请求而调用,通常收集模型数据并将它们传递给视图。

  你能拥有两个控制器吗? (@Controller类和调度程序   小服务程序)

您可以拥有任意数量的控制器。越多越好!通常一个前置控制器就足够了。

  

spring中的模型来自@modelattribute对象或来自的bean   商业逻辑?

@ModelAttribute是一个特殊的,记录不清,理解不佳的注释,在您理解基础知识之前不应该担心。

模型是您想要的任何地图。视图需要执行其查看的所有数据。