【XStream】xml和java实体的相互转化
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实体的相互转化的更多相关文章
- XStream xml转java对象
1:引入jar qn <dependency> <groupId>xstream</groupId> <artifactId>xstream</a ...
- XStream xml转java对象2
<?xml version="1.0" encoding="UTF-8" ?> <person> <name>yunyun& ...
- 根据json生成java实体类
之前一篇讲过了XML转java实体对象,使用的是JAXB技术,今天给大家推荐一个在线转json到java实体对象: http://www.bejson.com/json2javapojo/new/ 转 ...
- XStream轻松转换xml和java对象
首先引入所需的jar: xstream-1.4.9.xpp3_min-1.1.4c.dom4j-1.6.1, 或用maven管理jar包时在pom.xml中添加: <!-- https://mv ...
- 利用JAXB实现java实体类和xml互相转换
1.应用场景 在使用WebService实现数据上传下载,数据查询时,可以利用JAXB实现java实体类和xml互相转换 2.Demo 2.1 student.java 实体类,包含list(set同 ...
- 使用XStream是实现XML与Java对象的转换(3)--注解
六.使用注解(Annotation) 总是使用XStream对象的别名方法和注册转换器,会让人感到非常的乏味,又会产生很多重复性代码,于是我们可以使用注解的方式来配置要序列化的POJO对象. 1,最基 ...
- xml文档的解析并通过工具类实现java实体类的映射:XML工具-XmlUtil
若有疑问,可以联系我本人微信:Y1141100952 声明:本文章为原稿,转载必须说明 本文章地址,否则一旦发现,必追究法律责任 1:本文章显示通过 XML工具-XmlUtil工具实现解析soap报文 ...
- xml-mapping xml 与 java 对象转换映射框架,像 XStream 一样优雅地读写xml
xml xml 是 java 实现的 xml 框架. 希望以最优雅的方式进行 xml 和 java 之间的转换处理,一行代码搞定一切. 特点 对象的和 xml 的互相映射 支持注解 @Alias 指定 ...
- xml与java代码相互装换的工具类
这是一个java操作xml文件的工具类,最大的亮点在于能够通过工具类直接生成xml同样层次结构的java代码,也就是说,只要你定义好了xml的模板,就能一键生成java代码.省下了自己再使用工具类写代 ...
随机推荐
- 团队Alpha版本(七)冲刺
目录 组员情况 组员1(组长):胡绪佩 组员2:胡青元 组员3:庄卉 组员4:家灿 组员5:凯琳 组员6:翟丹丹 组员7:何家伟 组员8:政演 组员9:黄鸿杰 组员10:刘一好 组员11:何宇恒 展示 ...
- windows系统查找文件-通配符的使用
在windows中可以使用通配符“* ”.“? ”查找文件.对于相同字符开头的单词和相同字符结尾的单词可以用“<”和“ >”通配符查找单词.1.如果要查找: 任意单个字符 :键入 ? 例如 ...
- OpenFlow-Enaling innvation in Campus Networks
OpenFlow-Enaling innvation in Campus Networks 出现问题 背景 Networks have become part of the critical infr ...
- CodeForces A. Many Equal Substrings
http://codeforces.com/contest/1029/problem/A You are given a string tt consisting of nn lowercase La ...
- BZOJ2208 [Jsoi2010]连通数 【图的遍历】
题目 输入格式 输入数据第一行是图顶点的数量,一个正整数N. 接下来N行,每行N个字符.第i行第j列的1表示顶点i到j有边,0则表示无边. 输出格式 输出一行一个整数,表示该图的连通数. 输入样例 3 ...
- BZOJ 2103/3302/2447 消防站 树的重心【DFS】【TreeDP】
2103: Fire 消防站 Time Limit: 30 Sec Memory Limit: 259 MBSubmit: 157 Solved: 116[Submit][Status][Disc ...
- HDU1536&&POJ2960 S-Nim(SG函数博弈)
S-Nim Time Limit: 2000MS Memory Limit: 65536KB 64bit IO Format: %I64d & %I64u Submit Status ...
- COMPANY_点取消会卡死的解决方法
// OLD void ctonedlg::onbtn_basedir_clicked() { m_basedir = getUserSelectDir(); doSearchDir( ...
- 官网cocos2d
http://cocos2d.spritebuilder.com/download 官网 https://github.com/cocos2d/cocos2d-spritebuil ...
- v4l2读取摄像头程序流程解析【转】
转自:https://my.oschina.net/u/1024767/blog/210801 v4l2 操作实际上就是 open() 设备, close() 设备,以及中间过程的 ioctl() 操 ...