`
zqding
  • 浏览: 95756 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

JAVA对象与XML互相转变

阅读更多

简单介绍下JAVA对象与XML互相转变,详细请进入http://xstream.codehaus.org/tutorial.html

1、首先下载需要用的jar包:xstream-1.3.1.jar,并放置在ClassPath目录下

2、用到的两到JavaBean:

 

/**
 * File   : PhoneNumber.java
 * Author : zqding
 * Date   : 2011-1-21
 * Version:
 * Desc   : 	
 */
package org.usc.beans;

public class PhoneNumber {
	private int code;
	private String number;

	public PhoneNumber(){
		
	}
	
	public PhoneNumber(int code,String number){
		this.code = code;
		this.number = number;
	}
	
	public int getCode() {
		return code;
	}

	public void setCode(int code) {
		this.code = code;
	}

	public String getNumber() {
		return number;
	}

	public void setNumber(String number) {
		this.number = number;
	}
}

 

 

/**
 * File   : Person.java
 * Author : zqding
 * Date   : 2011-1-21
 * Version:
 * Desc   : 	
 */
package org.usc.beans;

public class Person {
	private String firstname;
	private String lastname;
	private PhoneNumber phone;
	private PhoneNumber fax;

	public Person(){
	}
	
	public Person(String name,String lname){
		this.firstname = name;
		this.lastname = lname;
	}
	
	public String getFirstname() {
		return firstname;
	}

	public void setFirstname(String firstname) {
		this.firstname = firstname;
	}

	public String getLastname() {
		return lastname;
	}

	public void setLastname(String lastname) {
		this.lastname = lastname;
	}

	public PhoneNumber getPhone() {
		return phone;
	}

	public void setPhone(PhoneNumber phone) {
		this.phone = phone;
	}

	public PhoneNumber getFax() {
		return fax;
	}

	public void setFax(PhoneNumber fax) {
		this.fax = fax;
	}

}

 

3、测试代码:

 

/**
 * File   : ObjectToXML.java
 * Author : zqding
 * Date   : 2011-1-21
 * Version:
 * Desc   : 	
 */
package org.usc.reflection;

import org.usc.beans.Person;
import org.usc.beans.PhoneNumber;

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

public class ObjectToXML {
	public static void main(String[] args) {
		  //1、对象转变成XML
		  Person person = new Person("Joe", "Walnes");
		  person.setPhone(new PhoneNumber(123, "1234-456"));
		  person.setFax(new PhoneNumber(123, "9999-999"));
		   
		  XStream xStream=new XStream(new DomDriver());
		  xStream.alias("person",Person.class);
		  String xml=xStream.toXML(person);
		  System.out.println(xml);
		  
		  //2、XML转变成对象
		  Person newJoe = (Person)xStream.fromXML(xml);
		  System.out.println(newJoe.getFirstname());
		  System.out.println(newJoe.getPhone().getNumber());
	}
}

 

4、显示结果:

 

<person>
  <firstname>Joe</firstname>
  <lastname>Walnes</lastname>
  <phone>
    <code>123</code>
    <number>1234-456</number>
  </phone>
  <fax>
    <code>123</code>
    <number>9999-999</number>
  </fax>
</person>
Joe
1234-456
分享到:
评论

相关推荐

    JAXB工具类 xml转为java对象 java对象转为xml

    JAXB是Java开发中处理XML的强大工具,通过注解和API实现了XML与Java对象的自动转换。了解并熟练掌握JAXB,能够提升XML数据处理的效率和代码的可读性。在实际项目中,结合JAXB与XML Schema,可以构建更健壮、易于维护...

    java对象与xml的互相转换

    Java对象与XML之间的转换是Java开发中常见的需求,特别是在数据交换、配置文件存储或Web服务交互等场景。本文将深入探讨如何实现Java对象到XML以及XML到Java对象的转换。 首先,Java对象到XML的转换通常涉及到Java...

    JAVA对象与XML互转

    总结来说,Java与XML的互转可以通过多种方式进行,选择哪种方法取决于你的具体需求,如性能、内存占用、易用性等因素。JAXB是Java的标准解决方案,适用于大多数情况;而DOM4J、XStream等第三方库则提供了更灵活的...

    JAVA对象与XML相互转化DEMO

    本示例"JAVA对象与XML相互转化DEMO"聚焦于如何在Java中实现对象与XML之间的互转,这对于理解和处理数据交换至关重要。 首先,Java中实现XML到对象的转换主要依赖于JAXB(Java Architecture for XML Binding)。JAXB...

    JAXB技术实现xml与java对象互相转化代码教程

    使用java jdk的JAXB技术实现xml与java对象互相转化代码教程: JDK中JAXB相关的重要Class和Interface:(来源于百度百科JAXB) •JAXBContext类,是应用的入口,用于管理XML/Java绑定信息。 •Marshaller接口,将Java...

    xml报文和java对象互相转换 相关jar包和测试代码

    xml报文和java对象互相转换 相关jar包和测试代码,可以与castor插件java对象和XML自动绑定maping文件生成和java对象一键生成工具1.2(https://download.csdn.net/download/kemoing/10864595)完美配合使用

    java对象生成xml数据

    `JAXBContext`是JAXB的核心类,它负责管理Java类与XML之间的绑定。创建`JAXBContext`实例时,你需要指定一组要绑定的Java类或者包名。`JAXBContext`会分析这些类,生成所需的元数据,以便在对象和XML之间进行转换。...

    Xstream_java对象和xml的互相转换

    总结来说,XStream 是一个强大且灵活的 Java 库,它简化了 Java 对象与 XML 数据之间的转换过程,提供了高度可定制的序列化和反序列化功能。通过合理利用它的特性,开发者可以在不牺牲代码可读性和可维护性的同时,...

    JAVA对象序列化保存为XML文件的工具类

    【JAVA对象序列化保存为XML文件的工具类】 在Java编程中,对象序列化是一种将对象的状态转换为字节流的过程,以便可以存储或在网络上传输。而在反序列化时,这个字节流又可以恢复为原来的对象。Java提供了一个方便...

    史上最牛逼的java对象转xml算法

    Java对象到XML转换是开发过程中常见的需求,尤其是在处理数据交换或者序列化时。XML因其结构化和可读性,常被用作数据存储和传输格式。然而,将Java对象转换为XML并不总是那么直观,特别是在处理复杂对象结构时。本...

    xml文件自动转成java对象工具

    XML文件自动转换为Java对象工具是一种实用的开发辅助软件,它可以帮助程序员快速地将XML数据映射到Java类,从而简化了数据处理的过程。在Java开发中,XML常被用作数据交换格式,但手动编写Java类来表示XML结构既耗时...

    JAVA对象转换成XML(CDATA)

    在Java编程中,将对象转换成XML是一种常见的数据序列化方式,这有助于数据交换和存储。当遇到包含特殊字符如 "和 "&" 的文本时,XML解析器可能会产生错误,因为这些字符在XML语法中有特定含义。为了解决这个问题,...

    JAXBContext测试Java对象与xml的相互转换Demo

    在Java世界中,Java Architecture for XML Binding (JAXB) 是一个强大的工具,它允许开发者将Java...通过深入学习和实践JAXBContext的使用,开发者可以更好地掌握Java与XML之间的交互,提升代码的可读性和可维护性。

    XML转换为JAVA对象的方法

    如果XML结构与Java类不完全匹配,可以通过XStream的alias方法自定义别名,或者使用annotations进行更精确的映射。 在提供的`AppDemo`文件中,可能包含了一个简单的示例应用,演示了如何在实际项目中使用XStream进行...

    Java对象与xml转换

    本篇文章将探讨如何在Java中进行Java对象与XML之间的转换,以及相关的工具和技术。 1. Java对象到XML转换: - **JAXB (Java Architecture for XML Binding)**:这是Java的标准API,用于在Java对象和XML之间进行...

    xml和java对象互相转换的两种方法

    本文将详细介绍两种主要的XML与Java对象互相转换的方法:DOM(Document Object Model)解析和JAXB(Java Architecture for XML Binding)。 1. DOM解析: DOM是一种W3C标准,它将XML文档解析成一棵由节点组成的树,...

    java对象转换成xml格式

    在Java编程中,将对象转换为XML格式是常见的数据交换需求,特别是在Web服务或数据存储中。JSON(JavaScript Object Notation)和XML(eXtensible Markup Language)都是用于结构化数据表示的标准,它们各有优势。...

    castor插件java对象和XML自动绑定maping文件生成和java对象一键生成工具1.2

    这样,开发者无需手动编写Java类,只需提供XML格式的数据样本,工具就能生成与之匹配的Java对象模型。这对于快速构建基于XML数据的应用程序非常有帮助,尤其是在处理复杂的XML结构时。 "测试工具包测试说明文档...

    好用的xStream XML和JAVA对象互相转换的简单示例

    XStream是一个轻量级、高性能的库,能够将Java对象序列化为XML,同时也能将XML反序列化回Java对象,实现XML和Java对象的互相转换。 首先,我们需要引入XStream库。在给定的描述中提到了两个依赖文件:xstream-1.3.1...

    XML与Java对象互相转化Demo(Eclipse)

    在Java编程中,XML与Java对象的相互转化是常见的需求,特别是在持久化、配置文件处理或网络通信中。本教程通过一个Eclipse项目演示了如何实现这一转化。 首先,我们需要理解XML文档的基本结构。XML文档由元素...

Global site tag (gtag.js) - Google Analytics