1.pom.xml

<!-- xstream xml和Java对象转化 -->
<dependency>
<groupId>xstream</groupId>
<artifactId>xstream</artifactId>
<version>1.1.3</version>
</dependency>
<dependency>
<groupId>xpp3</groupId>
<artifactId>xpp3</artifactId>
<version>1.1.3.4.O</version>
</dependency>

2.实体TestEntity.java

package com.sxd.test.controller;

import java.util.List;

/**
* 测试类 TestEntity---要转化为xml的类
* @author SXD
*
*/
public class TestEntity { private Integer money;
private String firstStr;
private boolean flag; private List<Team> teamList; public Integer getMoney() {
return money;
} public void setMoney(Integer money) {
this.money = money;
} public String getFirstStr() {
return firstStr;
} public void setFirstStr(String firstStr) {
this.firstStr = firstStr;
} public boolean isFlag() {
return flag;
} public void setFlag(boolean flag) {
this.flag = flag;
} public List<Team> getTeamList() {
return teamList;
} public void setTeamList(List<Team> teamList) {
this.teamList = teamList;
} @Override
public String toString() {
return "TestEntity [money=" + money + ", firstStr=" + firstStr
+ ", flag=" + flag + ", teamList=" + teamList + "]";
} }

3.实体Team.java

package com.sxd.test.controller;

/**
* 测试类 -- Team实体
* @author SXD
*
*/
public class Team { private String name;
private int num;
private String describe;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public String getDescribe() {
return describe;
}
public void setDescribe(String describe) {
this.describe = describe;
} @Override
public String toString() {
return "Team [name=" + name + ", num=" + num + ", describe=" + describe
+ "]";
} }

4.Test.java测试类

package com.sxd.test.controller;

import java.util.ArrayList;
import java.util.List; import com.thoughtworks.xstream.XStream; public class Test { @org.junit.Test
public void testName() throws Exception {
TestEntity obj = getEntity();
XStream stream = new XStream();
String xml = stream.toXML(obj);
System.out.println(xml); TestEntity testEntity = (TestEntity) stream.fromXML(xml);
System.out.println("");
System.out.println(testEntity.toString()); } public TestEntity getEntity(){
TestEntity entity = new TestEntity();
entity.setMoney(30000);
entity.setFlag(true);
entity.setFirstStr("艾欧尼亚"); List<Team> list = new ArrayList<Team>();
Team team1 = new Team();
team1.setName("英雄1");
team1.setNum(2);
team1.setDescribe("射手英雄,远程攻击型英雄"); list.add(team1); Team team2 = new Team();
team2.setName("英雄2");
team2.setNum(3);
team2.setDescribe("坦克英雄,肉盾抗击打型英雄"); list.add(team2); entity.setTeamList(list); return entity; } }

测试结果:

<com.sxd.test.controller.TestEntity>
<money>30000</money>
<firstStr>艾欧尼亚</firstStr>
<flag>true</flag>
<teamList>
<com.sxd.test.controller.Team>
<name>英雄1</name>
<num>2</num>
<describe>射手英雄,远程攻击型英雄</describe>
</com.sxd.test.controller.Team>
<com.sxd.test.controller.Team>
<name>英雄2</name>
<num>3</num>
<describe>坦克英雄,肉盾抗击打型英雄</describe>
</com.sxd.test.controller.Team>
</teamList>
</com.sxd.test.controller.TestEntity> TestEntity [money=30000, firstStr=艾欧尼亚, flag=true, teamList=[Team [name=英雄1, num=2, describe=射手英雄,远程攻击型英雄], Team [name=英雄2, num=3, describe=坦克英雄,肉盾抗击打型英雄]]]

【XStream】xml和java实体的相互转化的更多相关文章

  1. XStream xml转java对象

    1:引入jar qn <dependency> <groupId>xstream</groupId> <artifactId>xstream</a ...

  2. XStream xml转java对象2

    <?xml version="1.0" encoding="UTF-8" ?> <person> <name>yunyun& ...

  3. 根据json生成java实体类

    之前一篇讲过了XML转java实体对象,使用的是JAXB技术,今天给大家推荐一个在线转json到java实体对象: http://www.bejson.com/json2javapojo/new/ 转 ...

  4. XStream轻松转换xml和java对象

    首先引入所需的jar: xstream-1.4.9.xpp3_min-1.1.4c.dom4j-1.6.1, 或用maven管理jar包时在pom.xml中添加: <!-- https://mv ...

  5. 利用JAXB实现java实体类和xml互相转换

    1.应用场景 在使用WebService实现数据上传下载,数据查询时,可以利用JAXB实现java实体类和xml互相转换 2.Demo 2.1 student.java 实体类,包含list(set同 ...

  6. 使用XStream是实现XML与Java对象的转换(3)--注解

    六.使用注解(Annotation) 总是使用XStream对象的别名方法和注册转换器,会让人感到非常的乏味,又会产生很多重复性代码,于是我们可以使用注解的方式来配置要序列化的POJO对象. 1,最基 ...

  7. xml文档的解析并通过工具类实现java实体类的映射:XML工具-XmlUtil

    若有疑问,可以联系我本人微信:Y1141100952 声明:本文章为原稿,转载必须说明 本文章地址,否则一旦发现,必追究法律责任 1:本文章显示通过 XML工具-XmlUtil工具实现解析soap报文 ...

  8. xml-mapping xml 与 java 对象转换映射框架,像 XStream 一样优雅地读写xml

    xml xml 是 java 实现的 xml 框架. 希望以最优雅的方式进行 xml 和 java 之间的转换处理,一行代码搞定一切. 特点 对象的和 xml 的互相映射 支持注解 @Alias 指定 ...

  9. xml与java代码相互装换的工具类

    这是一个java操作xml文件的工具类,最大的亮点在于能够通过工具类直接生成xml同样层次结构的java代码,也就是说,只要你定义好了xml的模板,就能一键生成java代码.省下了自己再使用工具类写代 ...

随机推荐

  1. XML快速入门

    XML是什么 Extensible Markup Language 自定义标签: 用来传输数据: 可扩展标记语言,是一种类似超文本标记语言的标记语言. 与HTML的比较: 1.不是用来替代HTML的: ...

  2. jQuery中Ajax的属性设置

    1.全局设置为同步 $.ajaxSetup({ async: false });

  3. 【CZY选讲·最大子矩阵和】

    题目描述 有一个n*m的矩阵,恰好改变其中一个数变成给定的常数P,使得改变后的这个矩阵的最大子矩阵最大. 数据范围 n,m<=300. 题解:    ①如果没有p,那么二维矩阵和就是一维最长 ...

  4. 《c程序设计语言》-2.10 不用if-else 转换大小写

    #include <stdio.h> int lower(char a) { int b; b = (a >= 'A' && a <= 'Z') ? (a - ...

  5. bzoj2693 莫比乌斯反演

    Description Hint T <= 10000N, M<=10000000   https://wenku.baidu.com/view/fbec9c63ba1aa8114431d ...

  6. 非常好的Linux教程,让你的linux之路更通畅

    1  第1讲.Linux应用与发展(上) 2013-10-22 17:43 | 播放(46) | 评论(0) | 时长:51:38 2  第1讲.Linux应用与发展(下) 2013-10-22 17 ...

  7. Topcoder SRM 601 div1题解

    日常TC计划- Easy(250pts): 题目大意:有n个篮子,每个篮子有若干个苹果和橘子,先任取一个正整数x,然后从每个篮子中选出x个水果,把nx个水果放在一起,输出一共有多少种不同的组成方案.其 ...

  8. checkbox选中 解决兼容问题

    jquery 1.9 checkbox 是否选中 if($("#chk_selectedall").prop('checked')) checkbox 选中 $("#ch ...

  9. OpenCV实践之路——人脸检测(C++/Python) 【转】

    转自:http://blog.csdn.net/xingchenbingbuyu/article/details/51105159 版权声明:本文为博主原创文章,转载请联系作者取得授权. 本文由@星沉 ...

  10. [Oracle] oracle统计信息

    Oracle统计信息 Oracle数据库里的统计信息可以分为6种类型: 表的统计信息 索引的统计信息 列的统计信息 系统统计信息 数据字典统计信息 内部对象统计信息 图 1: Oracle统计信息 基 ...