需要的jar包:xmlpull_1_0_5.jar,xstream-1.4.1.jar)

  1、工具类XstreamUtil

  package com.learn.util;

 import com.thoughtworks.xstream.XStream;

 import com.thoughtworks.xstream.io.xml.DomDriver;

  /**

  *

  * @ClassName: XstreamUtil.java

   * @Description:

  * @author: fengzf fengzf@gstarcad.com

  * @Date: 2016年12月6日

  *

  */

  publicclass XstreamUtil {

  /**

  * 将bean转换为xml

   * @param obj  转换的bean

  *@return bean转换为xml

  */

   publicstatic String objectToXml(Object obj) {

  XStream xStream = new XStream();

  // xstream使用注解转换

   xStream.processAnnotations(obj.getClass());

  returnxStream.toXML(obj);

  }

   /**

  * 将xml转换为bean

  * @param<T>     泛型

  * @param xml       要转换为bean的xml

   * @param cls   bean对应的Class

  * @return xml转换为bean

  */

  publicstatic <T> T xmlToObject(String xml, Class<T> cls) {

  XStream xstream = new XStream(new DomDriver());

   // xstream使用注解转换

  xstream.processAnnotations(cls);

  return (T) xstream.fromXML(xml);

  }

  }

 2、Java普通实体类转xml

实体类Message.java代码

  package com.learn.entity;

  import com.thoughtworks.xstream.annotations.XStreamAlias;

  @XStreamAlias("Response")

  publicclass Message {

   @XStreamAlias("returncode")

   private String returnCode;

   @XStreamAlias("returnmessage")

  private String returnMessage;

   @XStreamAlias("status")

   privateintstatus;

   @XStreamAlias("time")

   private String reqTime;

   public String getReturnCode() {

    returnreturnCode;

    }

  publicvoid setReturnCode(String returnCode) {

  this.returnCode = returnCode;

  }

  public String getReturnMessage() {

   returnreturnMessage;

    }

   publicvoid setReturnMessage(String returnMessage) {

   this.returnMessage = returnMessage;

  }

   publicint getStatus() {

   returnstatus;

  }

   publicvoid setStatus(intstatus) {

   this.status = status;

   }

  public String getReqTime() {

    returnreqTime;

  }

  publicvoid setReqTime(String reqTime) {

   this.reqTime = reqTime;

   }

   }

3、XML字符串转实体

@XStreamAlias使用

一、 特点:

简化的API; 
无映射文件; 
高性能,低内存占用; 
整洁的XML; 
不需要修改对象;支持内部私有字段,不需要setter/getter方法 
提供序列化接口; 
自定义转换类型策略; 

二、 使用场景

Transport转换 
Persistence 持久化对象 
Configuration 配置 
Unit Tests 单元测试

Interface服务之间XML消息的交互

简单Java类与XML之间的转换的更多相关文章

  1. JAXB 实现java对象与xml之间互相转换

    首先熟悉一下JAXB实现对象与xml互转时常用的一些注解使用: 1.@XmlRootElement,用于类级别的注解,对应xml的跟元素.通过name属性定义这个根节点的名称. 2.@XmlAcces ...

  2. jaxb 专题一(JAXB 实现java对象与xml之间互相转换)

    首先熟悉一下JAXB实现对象与xml互转时常用的一些注解使用: 1.@XmlRootElement,用于类级别的注解,对应xml的跟元素.通过name属性定义这个根节点的名称. 2.@XmlAcces ...

  3. 通过JAXB完成Java对象与XML之间的转换

    Java对象转换XML的过程叫marshal. XML转换到Java对象的过程叫unmarshal. 一.Java对象转化为XML 这里省略getter和setter方法 通过标注@XMLRootEl ...

  4. JAXB—Java类与XML文件之间转换

    JAXB-Java类与XML文件之间转换 简介         JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生 ...

  5. JAVA Bean和XML之间的相互转换 - XStream简单入门

    JAVA Bean和XML之间的相互转换 - XStream简单入门 背景介绍 XStream的简介 注解简介 应用实例 背景介绍 我们在工作中经常 遇到文件解析为数据或者数据转化为xml文件的情况, ...

  6. 使用JAXB来实现Java合xml之间的转换

    使用jaxb操作Java与xml之间的转换非常简单,看个例子就明白了. //javaBean-->xml @Test public void test1() { try { JAXBContex ...

  7. java与xml之间的转换(jaxb)

    使用java提供的JAXB来实现java到xml之间的转换,先创建两个持久化的类(Student和Classroom): Classroom: package com.model; public cl ...

  8. JAXB实现java对象与xml之间转换

    JAXB简介: 1.JAXB能够使用Jackson对JAXB注解的支持实现(jackson-module-jaxb-annotations),既方便生成XML,也方便生成JSON,这样一来可以更好的标 ...

  9. Java中数据类型及其之间的转换

    Java中数据类型及其之间的转换 基本的数据类型 基本类型有以下四种:1)int长度数据类型有:byte(8bits).short(16bits).int(32bits).long(64bits).2 ...

随机推荐

  1. dubbo 配置文件详解

    一.dubbo常用配置 <dubbo:service/> 服务配置,用于暴露一个服务,定义服务的元信息,一个服务可以用多个协议暴露,一个服务也可以注册到多个注册中心. eg.<dub ...

  2. SharedPreferences.Editor 的apply()与commit()方法的区别

    commit()的文档 官方文档如下: Commit your preferences changes back from this Editor to the SharedPreferences o ...

  3. php单条件查询,关键字查询

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. js array queue (队列)

    前言 今天项目中做一个图片效果展示,需要实时从后台获取图片数据,前段做展示.想想用到队列,比较好实现这个功能,只需要展示队列里的数据就可以了.于是写了个js 对列. js code /** * [Qu ...

  5. $stateParams

  6. ASP.NET Core 1.1 静态文件、路由、自定义中间件、身份验证简介

    概述 之前写过一篇关于<ASP.NET Core 1.0 静态文件.路由.自定义中间件.身份验证简介>的文章,主要介绍了ASP.NET Core中StaticFile.Middleware ...

  7. 扩:new and override

    昨天有个网友问我继承里面的new和override关键词有啥区别,呃,我们来看个例子就知道了 new ==>隐藏父类同名方法  override==>覆盖 定义一个父类: public c ...

  8. 前端MVVM框架设计及实现(一)

    最近抽出点时间想弄个dom模块化的模板引擎,不过现在这种都是MVVM自带的,索性就想自己造轮子写一个简单的MVVM框架了 借鉴的自然还是从正美的avalon开始了,我记得还是去年6月写过一个系列的av ...

  9. 12款非常精致的免费 HTML5 & CSS3 网站模板

    01. Joefrey Mahusay 很炫的单页网站模板,基于 HTML5 & CSS3 制作,适合用于设计师个人简历.摄影师和平面设计师的个人作品展示. 演示  下载 02. Folder ...

  10. WPF MVVM框架下,VM界面写控件

    MVVM正常就是在View页面写样式,ViewModel页面写逻辑,但是有的时候纯在View页面写样式并不能满足需求.我最近的这个项目就遇到了,因此只能在VM页面去写样式控件,然后绑定到View页面. ...