EnableWebMvc注释的含义
我阅读关于@EnableWebMvc
javadoc。
但是我不明白这个注解是什么意思?
你能清楚地说清楚吗?
当您使用Java代码(而不是XML)来configurationSpring应用程序时,使用@EnableWebMvc
来启用Spring MVC。 如果您还不熟悉Spring对Javaconfiguration的支持,那么这是一个很好的开始 。
@EnableWebMvc
相当于XML中的<mvc:annotation-driven />
。 它支持@Controller
支持使用@RequestMapping
@Controller
类将传入的请求映射到某个特定的方法。 您可以阅读有关默认configuration的详细信息,以及如何在参考文档中自定义configuration。
欢迎来到spring的世界。 在知道@EnableWebMVC
注释的@EnableWebMVC
之前,您需要了解一些内容。
spring传统上支持两种types的configuration:
- 基于XML的configuration
- 基于注释的configuration
这些注释本质上是作为MVC Javaconfigurationdevise的一部分来实现的。
考虑一个简单的类:
@EnableWebMvc @Configuration public class WebConfig { }
没有基类。 没有春豆在眼前..嗯..
让我们进一步:
- 这实际上提供了什么?
好吧,让你多一点点,它提供了很多东西,如:
- @MVC请求处理
- 全球JSR-303validation器
还有一些。
啊哈哈…但是你的应用程序正确的工作。 那么,魔法在哪里?
@EnableWebMVC <---- What's behind this..?
这是背后的原因:
@Retention(RetentionPolicy.RUNTIME) @Import(DelegatingWebMvcConfiguration.class) @Target(ElementType.TYPE) public @interface EnableWebMvc { }
看,现在你会认为使用@EnableWebMVC
是多么毫无意义。 你会宁愿:
- 扩展WebMvcConfigurationSupport
- 覆盖
@Bean
和其他可用的方法
你可以阅读:
- Javareflection:注释
希望能帮助到你。 🙂