Spring MVC的文档有时会说“处理程序”或“请求处理程序”.例如,
http://docs.spring.io/autorepo/docs/spring/4.0.4.RELEASE/javadoc-api/org/springframework/web/servlet/handler/SimpleUrlHandlerMapping.html说:
Implementation of the HandlerMapping interface to map from URLs to request handler beans
有时它会说控制器.例如,有一个名为org.springframework.web.servlet.mvc.Controller的接口(http://docs.spring.io/spring-framework/docs/2.5.x/api/org/springframework/web/servlet/mvc/Controller.html).
我的问题是:控制器和处理程序是一样的吗?
一般来说,Controller是Handler,但Handler不一定是Controller.
例如,HttpRequestHandler,WebRequestHandler,MessageHandler都是可以使用DispatcherServlet的处理程序. ((@)Controller是执行Web请求并返回视图的处理程序.)
简而言之,Handler只是一个术语,它既不是类也不是接口.它负责执行映射.