[spring-mvc]在MVC中启用Java配制

启用Java配制

参考文章

Enabling the MVC Java Config or the MVC XML Namespace

正文

要启用MVC的Java配制,要在你的一个标记有@Configuration类上添加@EnableWebMvc注解

@Configuration
@EnableWebMvc
public class WebConfig {
}

在XML文件中达到相同的目的,你可以在你的DispatcherServlet的上下文(如果DispatcherServlet上下文没有定义,则在根上下文中)中添加mvc:annotation-driven

@EnableWebMvcmvc:annotation-driven的作用

注册了一个RequestMappingHandlerMapping, 一个RequestMappingHandlerAdapter,一个ExceptionHandlerExceptionResolver以支持例如标记有@RequestMapping@ExceptionHandler等注解的控制器方法来处理请求。

其也激活了下面的配制:
1. 通过ConversionService实例注册Spring3风格的数据绑定而不是使用JavaBeans PropertyEditors
2. 通过ConversionService支持使用@NumberFormat格式化数字。
3. 使用@DateTimeFormat来格式化Date, Calendar, Long
4. 如果JSR-303的提供者在类路径中出现,支持使用@Valid校验@Controller
5. HttpMessageConverter支持标记有@RequestMapping@ExceptionHandler方法的@RequestBody参数和@ResponseBody方法返回值。

下面是HttpMessageConverters完整的设置

  • ByteArrayHttpMessageConverter 转换二进制数据。
  • StringHttpMessageConverter转换字符串。
  • ResourceHttpMessageConverter转换来自org.springframework.core.io.Resource所有媒体类型。
  • SourceHttpMessageConverter转换javax.xml.transform.Source
  • FormHttpMessageConverter转换数据从MultiValueMap<String, String>
  • Jaxb2RootElementHttpMessageConverter 转换 Java对象到XML – 如果JAXB2出现,而Jackson 2 XML extension没有出现则添加该转换器
  • MappingJackson2HttpMessageConverter 转换JSON – 如果Jackson 2在类路径上出现则添加。
  • MappingJackson2XmlHttpMessageConverter转换XML – 如果Jackson 2 XML extension 在类路径中出现则添加
  • AtomFeedHttpMessageConverter 转换 Atom – 如果Rome在类路径中出现则添加
  • RssChannelHttpMessageConverter 转换 RSS – 如果Rome在类路径中出现则添加

猜你喜欢

转载自blog.csdn.net/weixin_36210698/article/details/81197270