每次看到好的博客我就想好好的整理起来,便于后面本身复习,同时也共享给网络上的伙伴们!html
博客地址:spring
springMVC整合Jaxb二、xStream: http://www.cnblogs.com/hoojo/archive/2011/04/29/2032571.htmljson
springMVC整合castor、jibx、Jackson: http://www.cnblogs.com/hoojo/archive/2011/04/29/2032609.html网络
一、前言:app
SpringMVC中整合了JSON、XML的视图,能够经过这些视图完成Java对象到XML、JSON的转换。转换XML提供了MarshallingView,开发者只需用注入相应的marshaller、和属性配置,便可自动完成Java的Model对象中的数据到XML的编组。框架
二、技术: 工具
涉及到Jackson、xStream、Jibx、Jaxb二、castorr等技术,若是你对这些技术还不是很了解。建议阅读:http://www.cnblogs.com/NF-CHH/archive/2013/02/24/JSON-XML.html。这里只对涉及到的技术进行总结与概括。spa
2.一、Jaxb2编组XML[采用的视图:MarshallingView]xml
Jaxb2能够完成XML和Java的相互转换,在WebService中用得较多。htm
总结,若是你想将一些Java的基本类型转换成XML。那么你得建立一个带getter、setter方法的JavaBean。而后在Bean的getter方法进行相应的Annotation注解便可完成转 换。
2.二、用xStream转换XML[采用的视图:MarshallingView]
xStream能够轻易的将Java对象转换成XML、JSON,Spring整合利用xStream转换xml。
总结,xStream相对jaxb2要简单些。并且相对比较灵活,能够轻易的转换Java普通类型。
2.三、用Castor转换XML[采用的视图:MarshallingView]
castor能够经过一个mapping.xml文件对即将转换的Java对象进行描述,而后能够将Java对象按照描述的状况输出XML内容。
总结,使用castor能够转换普通不通过封装的Java类型,可是Map对象则须要进行简单对象封装,而后在mapping中进行描述才行。Castor和其余的框架不一样的是,可 以在xml配置中进行转换对象的描述规则。
2.四、用Jibx转换XML[采用的视图:MarshallingView]
jibx能够完成Java对象到xml的转换,可是它须要bind.xml的配置以及多个工具类生成Jibx_BindList信息,相对与上面三种来讲这种稍微复杂些。
总结,jibx应用比较广,在WebService中都有使用jibx。Jibx速度比较快,就是在开始部署使用的时候须要写bind.xml文件。不过官方提供了工具类,这个也不麻烦。
2.五、Jackson转换Java对象[采用的视图:MappingJacksonJsonView]
jackson有专门的视图MappingJacksonJsonView,只需用配置这个视图就能够完成转换json。
总结,spring对jackson提供了专门的视图,整合起来也比较方便。并且jackson也比较简单易用。