Spring MVC的自动转换功能 HttpMessageConverter

来源:互联网 发布:软件下载系统网站源码 编辑:程序博客网 时间:2024/06/16 09:41

[-]

  1. StringHttpMessageConverter that can read and write Strings from the HTTP request and response
  2. FormHttpMessageConverterthat can read and write form data from the HTTP request and response
  3. ByteArrayMessageConverterthat can read and write byte arrays from the HTTP request and response
  4. MarshallingHttpMessageConverterXML的转换需要使用Spring的 Marshaller 和 Unmarshaller
  5. MappingJacksonHttpMessageConverterJSON的转换
  6. 默认起用的MVC注解功能
    <<span class="hl-tag" style="color: rgb(63, 127, 127);">bean</span> <span class="hl-attribute" style="color: rgb(127, 0, 127);">class</span>=<span class="hl-value" style="color: rgb(42, 0, 255);">"org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter"</span>>

    StringHttpMessageConverter: that can read and write Strings from the HTTP request and response.

    FormHttpMessageConverter:that can read and write form data from the HTTP request and response.

    ByteArrayMessageConverter:that can read and write byte arrays from the HTTP request and response.

    MarshallingHttpMessageConverter:XML的转换需要使用Spring的 Marshaller 和 Unmarshaller.

    MappingJacksonHttpMessageConverter:JSON的转换.

    SourceHttpMessageConverter:能够读/写来自HTTP的请求与响应的javax.xml.transform.Source ,支持DOMSourceSAXSource, 和 StreamSource 的XML格式

    BufferedImageHttpMessageConverter:that can read and write java.awt.image.BufferedImage from the HTTP request and response

    起用JSON转换功能
    xml
     1     <!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射 -->
     2     <bean
     3         class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter">
     4         <property name="messageConverters">
     5             <util:list id="beanList">
     6                 <ref bean="stringHttpMessageConverter" />
     7                 <ref bean="jsonHttpMessageConverter" />
     8                 <ref bean="marshallingHttpMessageConverter" />
     9             </util:list>
    10         </property>
    11     </bean>
    12 
    13     <bean id="stringHttpMessageConverter"
    14         class="org.springframework.http.converter.StringHttpMessageConverter" />
    15     <bean id="jsonHttpMessageConverter"
    16         class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" />
    17     <bean id="marshallingHttpMessageConverter"
    18         class="org.springframework.http.converter.xml.MarshallingHttpMessageConverter">
    19         <property name="marshaller" ref="castorMarshaller" />
    20         <property name="unmarshaller" ref="castorMarshaller" />
    21     </bean>
    22 
    23     <bean id="castorMarshaller" class="org.springframework.oxm.castor.CastorMarshaller" />
    24 

    MappingJacksonHttpMessageConverter能够将POJO对象自动转换为JSON对象

        @RequestMapping(value = "/getPojoJson" , method=RequestMethod.GET)
        
    public @ResponseBody Pojo getPojoJson() {
          Pojo pojo
    =new Pojo();
          pojo.setA(
    "test");
          pojo.setB(
    1);
          pojo.setD(
    new Date());
          
    return pojo;
        }
    需要依赖JSON对象的处理JAR包
    jackson-core-lgpl.jar
    jackson-mapper-lgpl.jar
    下载地址:
    http://jackson.codehaus.org/

    欢迎一起学习:QQ:82374126
0 0
原创粉丝点击