Vic*_*cky 7 model-view-controller spring design-patterns spring-mvc
如果查看Java EE FrontController序列图,Controller 会将请求委托给Dispatcher,文档说:
调度程序负责视图管理和导航,管理向用户呈现的下一个视图的选择,以及提供向该资源进行矢量控制的机制.
在Spring MVC中,DispatcherServlet充当FrontController(如由Craig墙在书中提到),并且这代表的Servlet到其它控制器的要求,即依次调用相应的服务类(处理请求),然后返回的一个实例ModelAndView,以DispatcherServlet一次.
所以大致这是请求通常的旅行方式:
客户端 - > DispatcherServlet - >控制器 - >服务 - > DAO
如果将此流与Java EE FrontController模式序列图进行比较,则看起来DispatcherServlet不是真正的FrontController.
你怎么说这个?
Kar*_*ran 11
我会说DispatcherServlet填充前端控制器和调度程序的卷.但是,不是直接委托给视图,DispatcherServlet委托给另一个控制器.这使您可以更好地将演示文稿与业务逻辑分开.在"纯"前端控制器范例中,您可能必须为视图添加一些业务逻辑.
简而言之,DispatcherServlet实现了与Front Controller模式相同的目标.但它确实允许您向调度程序添加另一层控制器,从而略微偏离它.我认为这是件好事.
| 归档时间: |
|
| 查看次数: |
5332 次 |
| 最近记录: |