zoukankan      html  css  js  c++  java
  • SpringMVC 中整合之JSON、XML

    每次看到好的博客我就想好好的整理起来,便于后面自己复习,同时也共享给网络上的伙伴们!

    博客地址:

      springMVC整合Jaxb2、xStream:  http://www.cnblogs.com/hoojo/archive/2011/04/29/2032571.html

      springMVC整合castor、jibx、Jackson:  http://www.cnblogs.com/hoojo/archive/2011/04/29/2032609.html

    1、前言

      SpringMVC中整合了JSON、XML的视图,可以通过这些视图完成Java对象到XML、JSON的转换。转换XML提供了MarshallingView,开发者只需用注入相应的marshaller、和属性配置,即可自动完成Java的Model对象中的数据到XML的编组。

    2、技术:  

      涉及到Jackson、xStream、Jibx、Jaxb2、castorr等技术,如果你对这些技术还不是很了解。建议阅读:http://www.cnblogs.com/NF-CHH/archive/2013/02/24/JSON-XML.html。这里只对涉及到的技术进行总结与归纳。

      2.1、Jaxb2编组XML[采用的视图:MarshallingView]

      Jaxb2可以完成XML和Java的相互转换,在WebService中用得较多。

      总结,如果你想将一些Java的基本类型转换成XML。那么你得创建一个带getter、setter方法的JavaBean。然后在Bean的getter方法进行相应的Annotation注解即可完成转  换。

      2.2、xStream转换XML[采用的视图:MarshallingView]

      xStream可以轻易的将Java对象转换成XML、JSON,Spring整合利用xStream转换xml。

      总结,xStream相对jaxb2要简单些。而且相对比较灵活,可以轻易的转换Java普通类型。

      2.3、Castor转换XML[采用的视图:MarshallingView]

      castor可以通过一个mapping.xml文件对即将转换的Java对象进行描述,然后可以将Java对象按照描述的情况输出XML内容。

      总结,使用castor可以转换普通不经过封装的Java类型,但是Map对象则需要进行简单对象封装,然后在mapping中进行描述才行。Castor和其他的框架不同的是,可    以在xml配置中进行转换对象的描述规则。

      2.4、Jibx转换XML[采用的视图:MarshallingView]

       jibx可以完成Java对象到xml的转换,但是它需要bind.xml的配置以及多个工具类生成Jibx_BindList信息,相对与上面三种来说这种稍微复杂些。

       总结,jibx应用比较广,在WebService中都有使用jibx。Jibx速度比较快,就是在开始部署使用的时候需要写bind.xml文件。不过官方提供了工具类,这个也不麻烦。

      2.5、Jackson转换Java对象[采用的视图:MappingJacksonJsonView]

      jackson有专门的视图MappingJacksonJsonView,只需用配置这个视图就可以完成转换json。

      总结,spring对jackson提供了专门的视图,整合起来也比较方便。而且jackson也比较简单易用。

  • 相关阅读:
    CF1416D Graph and Queries
    Wordpress建站系统相关
    微观经济学
    Preface
    Thread pool in chromium
    [fllutter engine] 并发消息队列
    bugku misc
    python 3.1学习
    HTML&CSS
    DOM技术点
  • 原文地址:https://www.cnblogs.com/NF-CHH/p/3582159.html
Copyright © 2011-2022 走看看