`
perfy315
  • 浏览: 414200 次
社区版块
存档分类
最新评论

mvc:annotation-driven 注解

阅读更多
<mvc:annotation-driven/>
相当于注册了DefaultAnnotationHandlerMapping和AnnotationMethodHandlerAdapter两个bean,配置一些messageconverter。即解决了@Controller注解的使用前提配置。

<context:annotation-config/>
1)隐式地向Spring容器中注册AutowiredAnnotationBeanPostProcessor、CommonAnnotationBeanPostProcessor、PersistenceAnnotationBeanPostProcessor 及 equiredAnnotationBeanPostProcessor 这 4 个 BeanPostProcessor。
在配置文件中使用<context:annotationconfig/>之前,必须在 <beans> 元素中声明 context 命名空间<context:component-scan/>。
2)是对包进行扫描,实现注释驱动Bean定义,同时将bean自动注入容器中使用。即解决了@Controller标识的类的bean的注入和使用。


<context:component-scan/>
配置项不但启用了对类包进行扫描以实施注释驱动 Bean 定义的功能,同时还启用了注释驱动自动注入的功能(即还隐式地在内部注册了 AutowiredAnnotationBeanPostProcessor 和 CommonAnnotationBeanPostProcessor),因此当使用 <context:component-scan/> 后,除非需要使用PersistenceAnnotationBeanPostProcessor和equiredAnnotationBeanPostProcessor两个Processor的功能(例如JPA等)否则就可以将 <context:annotation-config/> 移除了。

(转:http://bbs.shopxx.net/read-htm-tid-10645.html)
spring mvc <mvc:annotation-driven />会自动启动Spring MVC的注解功能,但实际它做了哪些工作呢?

<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">
<property name="order" value="1" />
</bean>
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
<property name="webBindingInitializer">
  <bean class="org.springframework.web.bind.support.ConfigurableWebBindingInitializer">
   <property name="conversionService" ref="conversionService" />
   <property name="validator" ref="validator" />
  </bean>
</property>
</bean>
<bean id="conversionService" class="org.springframework.samples.petclinic.util.PetclinicConversionServiceFactory" />
<bean id="validator" class="org.springframework.validation.beanvalidation.LocalValidatorFactoryBean" />
分享到:
评论

相关推荐

    拦截器与冲突解决

    - **排除默认拦截器**:如果`&lt;mvc:annotation-driven /&gt;`包含默认拦截器,可以考虑使用`&lt;mvc:default-servlet-handler&gt;`或`&lt;mvc:annotation-driven enable-matrix-variables="false" /&gt;`来禁用它们。 - **调整拦截器...

    SpringMVC源码总结(三)mvc:annotation-driven和mvc:message-converters简单介绍

    在Spring MVC框架中,`mvc:annotation-driven`和`mvc:message-converters`是两个非常重要的元素,它们在处理基于注解的控制器和数据转换方面起着关键作用。本篇文章将深入探讨这两个组件的工作原理以及如何在实际...

    SpringMVC源码总结(二)mvc:mvc:annotation-driven背后的那些事

    在Spring MVC框架中,`mvc:annotation-driven`是Spring MVC配置中的一个重要元素,它使得我们的应用能够支持基于注解的控制器、数据绑定、格式化转换器和服务端验证等功能。这篇博客将深入探讨`mvc:annotation-...

    (代码)SpringMVC第12讲:<mvc:annotation-driven/>

    首先,`&lt;mvc:annotation-driven/&gt;`的作用是自动配置Spring MVC,启用对处理方法注解的支持,如`@RequestMapping`、`@RequestParam`、`@ModelAttribute`等。通过这个元素,我们可以避免编写大量的XML配置,转而采用...

    spring-mvc 注解方式xml配置

    `&lt;mvc:annotation-driven&gt;`则启用了Spring MVC的注解支持。 最后,`web.xml`是应用的部署描述符,配置`DispatcherServlet`以便处理所有HTTP请求: ```xml &lt;web-app&gt; &lt;servlet-name&gt;dispatcher&lt;/servlet-name&gt; ...

    Spring源码学习十一:SpringMVC-@RequestBody接收json数据报4151

    深入源码分析,`&lt;mvc:annotation-driven /&gt;` 是Spring MVC中用于启用注解驱动的配置元素,它会自动配置一些关键组件,包括消息转换器。`MvcNamespaceHandler` 是处理这个注解的命名空间处理器,而`...

    spring注解出现中文乱码

    - **XML配置文件**:题目中提到的异常信息提示`mvc:annotation-driven`元素没有子元素,这是由于`mvc:annotation-driven`的配置方式不正确所致。 - **修正方式**:根据Spring 3.0的规范,`mvc:annotation-driven`...

    spring-mvc-4.2.xsd.zip

    例如,`&lt;mvc:annotation-driven&gt;`元素用于启用基于注解的控制器支持,这意味着Spring MVC会自动扫描并处理带有`@Controller`注解的类。而`&lt;context:component-scan&gt;`则用于扫描指定包下的所有类,自动发现带有`@...

    SpringMVC中解决@ResponseBody注解返回中文乱码问题

    总的来说,解决SpringMVC中`@ResponseBody`注解返回中文乱码问题的关键在于正确配置`HttpMessageConverter`,确保其支持UTF-8编码,并将这些配置放在`&lt;mvc:annotation-driven&gt;`元素之前。通过上述方法,可以有效地...

    spring mvc3.1.0 日期自动转换

    3. 配置转换器:在Spring MVC配置中,你可以通过`&lt;mvc:annotation-driven&gt;`标签启用数据绑定和类型转换功能,并可以自定义转换器的优先级或添加新的转换器。 ```xml &lt;mvc:annotation-driven&gt; &lt;mvc:converters&gt; &lt;!...

    Spring基础包的dtd(aop,jdbc,jee,jms,lang,mvc,oxm)等

    `mvc.dtd`是Spring MVC模块的DTD文件,提供了如`&lt;mvc:annotation-driven&gt;`、`&lt;mvc:view-controller&gt;`等元素,用于声明式地配置控制器、视图解析等。 `oxm.dtd`涉及对象/XML映射(Object/XML Mapping),如JAXB或...

    SpringMVC关于json、xml自动转换的原理研究.pdf

    首先,我们来看`&lt;mvc:annotation-driven/&gt;`标签,它是Spring MVC配置中用于启用基于注解的控制器的关键元素。在Spring的内部,这个标签会被`AnnotationDrivenBeanDefinitionParser`解析,进而创建并配置一系列的...

    SpringMVC关于json、xml自动转换的原理研究.docx

    Spring MVC的核心配置`&lt;mvc:annotation-driven/&gt;`在解析时,会创建`RequestMappingHandlerMapping`和`RequestMappingHandlerAdapter`这两个关键组件。前者负责将`@RequestMapping`注解的路由信息与控制器方法关联,...

    SpringMVC+Hibernate实例

    &lt;mvc:annotation-driven/&gt; &lt;!--视图解析--&gt; &lt;bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver"&gt; ...

    后台接口返回json数据所需jar包和配置

    需要在`&lt;mvc:annotation-driven&gt;`或自定义`&lt;bean&gt;`中配置这个消息转换器。 ```xml &lt;mvc:annotation-driven&gt; &lt;mvc:message-converters register-defaults="true"&gt; &lt;!-- 可以配置特定的ObjectMapper,如果不配置...

    SpringMVC上传文件ie提示下载json文件解决方案

    - `&lt;mvc:annotation-driven&gt;`:启用SpringMVC注解驱动,这是使用SpringMVC框架的基本配置之一。 - `&lt;mvc:message-converters&gt;`:指定要使用的消息转换器。 - `&lt;ref bean="mappingJackson2HttpMessageConverter"/&gt;...

    spring的部分常用xsd文件,包含mvc,aop,beans,tx,task多个版本

    XSD文件如`spring-mvc.xsd`定义了Spring MVC配置的元素和属性,例如`&lt;mvc:annotation-driven&gt;`用于启用基于注解的控制器,`&lt;bean&gt;`定义了一个可被Spring管理的Bean。 2. **Spring AOP**: Spring AOP模块提供了...

    SPRING MVC3.2案例讲解---配置

    `mvc:annotation-driven`则是开启Spring MVC的注解驱动,支持我们在Controller方法上使用@RequestMapping等注解。 除了基本配置,我们还可以配置拦截器(Interceptor)、异常处理器(HandlerExceptionResolver)...

    spring—mvc -json

    &lt;/mvc:annotation-driven&gt; ``` 5. 测试:现在,当客户端向 `/person` URL发起GET请求时,Spring MVC会将`getPerson`方法返回的`Person`对象自动转换为JSON格式并返回给客户端。 在提供的`JavaJson`压缩包中,...

    Spring3.X @MVC - (一)重要的配置文件

    2. **`&lt;mvc:annotation-driven&gt;`**: 此元素启用Spring MVC对注解的处理,使得我们可以在控制器类的方法上使用像@RequestMapping这样的注解来处理HTTP请求。它还提供了数据绑定、转换服务、验证等特性。 3. **`...

Global site tag (gtag.js) - Google Analytics