java - Spring MVC 中哪个是 Controller 哪个是 HandlerMapping?

标签 java spring spring-mvc

我正在使用 this学习 Spring MVC 的链接。如前所述,dispatcher-servlet 在顶部处理所有传入请求。

还描述了有一个HandlerMapping和一个Controller。但是,在源代码中,只使用了Controller。那么哪个是 HandlerMapping 呢?是不是一个单独的文件?

或者它是否存在于其他一些复杂的场景中?

最佳答案

Controller 和 HandlerMapping 在 Spring MVC 中是两个不同的东西。 Controller 是一个实际的 java 类,用于处理请求。我们在类定义的顶部声明 @Controller。 其中 HandlerMapping 是在 Spring 框架的类中构建的。 Spring框架中有很多处理映射,如BeanNameUrlHandlerMappingControllerClassNameHandlerMapping等。默认情况下,BeanNameUrlHandlerMapping用于映射请求。此类在所有 Controller 类中搜索以将特定请求与方法映射。

关于java - Spring MVC 中哪个是 Controller 哪个是 HandlerMapping?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8643007/

相关文章:

java - @ControllerAdvice 不适用于 SIBLING 包?

java - 使用列表和复选框的 Spring MVC 数据绑定(bind)

java - 了解Spring MVC中@ModelAttribute和@RequestAttribute注解的使用

Java多线程访问一个String

基于@Profile 的Spring @Autowire 字段

Java servlet 共享集合

java - 由 : java. lang.IllegalArgumentException 引起:至少提供了 1 个参数,但查询中仅存在 0 个参数

java - 如何将配置xml文件从WEB-INF移动到java spring中的资源?

java - 如何从 firebase 数据库中获取基于时间戳的排序数据

java - Spring/JPA 中的实体更新选项