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

博客地址:

  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也比较简单易用。

最新文章

  1. 【转】外部应用和drools-wb6.1集成解决方案
  2. 最简实例说明wait、notify、notifyAll的使用方法
  3. dango foreign key 指定被引用模型的字段
  4. 细说Javascript之null、undefined和NaN
  5. Robotium Table控件的处理
  6. 快速认识ELK中的L - Logstash
  7. MATLAB图像处理函数汇总(二)
  8. 网站开发常用jQuery插件总结(三)拖拽插件gridster
  9. 入门指引 - PHP手册笔记
  10. ICE
  11. poj3308 Paratroopers --- 最小点权覆盖->最小割
  12. 微信小程序前置课程:flex布局(二)
  13. Hbase压力测试
  14. SQL函数学习(三):convert()函数
  15. 通过一步步创建sharded cluster来认识mongodb
  16. json对象、构造原型、组合继承
  17. Vim常用的命令
  18. [分享]Active-HDL 9.2 安装
  19. linux JAVA_HOME和 java -version不匹配
  20. 【Think in java读书笔记】序列化

热门文章

  1. 多个不同的表合并到一个datatable中,repeater在绑定datatable
  2. Picasso 加载图片到RelativeLayout之解决方案
  3. [Django] html 前端页面jQuery、图片等路径加载问题
  4. CreateFile函数详解(确实很详细)
  5. 修改Windows XP的桌面路径
  6. CxImage的使用
  7. SDUT OJ 2783 小P寻宝记
  8. 软交所--微软将对IE浏览器进行关键性安全更新
  9. Codeforces 475C Kamal-ol-molk's Painting 模拟
  10. dropDownList之"请选择",同时设置默认选项