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. 团队Alpha版本(七)冲刺

    目录 组员情况 组员1(组长):胡绪佩 组员2:胡青元 组员3:庄卉 组员4:家灿 组员5:凯琳 组员6:翟丹丹 组员7:何家伟 组员8:政演 组员9:黄鸿杰 组员10:刘一好 组员11:何宇恒 展示 ...

  2. windows系统查找文件-通配符的使用

    在windows中可以使用通配符“* ”.“? ”查找文件.对于相同字符开头的单词和相同字符结尾的单词可以用“<”和“ >”通配符查找单词.1.如果要查找: 任意单个字符 :键入 ? 例如 ...

  3. OpenFlow-Enaling innvation in Campus Networks

    OpenFlow-Enaling innvation in Campus Networks 出现问题 背景 Networks have become part of the critical infr ...

  4. CodeForces A. Many Equal Substrings

    http://codeforces.com/contest/1029/problem/A You are given a string tt consisting of nn lowercase La ...

  5. BZOJ2208 [Jsoi2010]连通数 【图的遍历】

    题目 输入格式 输入数据第一行是图顶点的数量,一个正整数N. 接下来N行,每行N个字符.第i行第j列的1表示顶点i到j有边,0则表示无边. 输出格式 输出一行一个整数,表示该图的连通数. 输入样例 3 ...

  6. BZOJ 2103/3302/2447 消防站 树的重心【DFS】【TreeDP】

    2103: Fire 消防站 Time Limit: 30 Sec  Memory Limit: 259 MBSubmit: 157  Solved: 116[Submit][Status][Disc ...

  7. HDU1536&&POJ2960 S-Nim(SG函数博弈)

    S-Nim Time Limit: 2000MS   Memory Limit: 65536KB   64bit IO Format: %I64d & %I64u Submit Status ...

  8. COMPANY_点取消会卡死的解决方法

    // OLD void ctonedlg::onbtn_basedir_clicked() {     m_basedir = getUserSelectDir();     doSearchDir( ...

  9. 官网cocos2d

    http://cocos2d.spritebuilder.com/download           官网 https://github.com/cocos2d/cocos2d-spritebuil ...

  10. v4l2读取摄像头程序流程解析【转】

    转自:https://my.oschina.net/u/1024767/blog/210801 v4l2 操作实际上就是 open() 设备, close() 设备,以及中间过程的 ioctl() 操 ...