`
absolute
  • 浏览: 190258 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

JAXB小例子

阅读更多

package jaxb.test;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement
@XmlAccessorType(XmlAccessType.PROPERTY)
public class Account {
	private String id;
	private String name;

	@XmlAttribute (name = "id")
	public String getId() {
		return id;
	}

	public void setId(String id) {
		this.id = id;
	}

	@XmlElement(name = "name")
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

}

 

package jaxb.test;

import java.net.URL;

import javax.xml.bind.JAXBContext;
import javax.xml.bind.Unmarshaller;

public class Client {
	public static void main(String[] args) throws Exception {
//		JAXBContext context = JAXBContext.newInstance(UserList.class);
		JAXBContext context = JAXBContext.newInstance(Account.class);
		Unmarshaller unmarshaller = context.createUnmarshaller();
		// URL xmlFileUrl = Client.class.getResource("users.xml");
		// UserList userList = (UserList) unmarshaller.unmarshal(xmlFileUrl);
		// System.out.println(userList.getUsers().get(0).getName());
		// System.out.println(userList.getUsers().get(0).getId());

		URL xmlFileUrl = Client.class.getResource("account.xml");
		Account account = (Account) unmarshaller.unmarshal(xmlFileUrl);
		System.out.println(account.getId());
		System.out.println(account.getName());
	}
}

 

package jaxb.test;

import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;

public class User {
	private int id;
    private String name;
 
    @XmlAttribute (name = "id")
    public int getId() {
        return id;
    }
 
    public void setId(int id) {
        this.id = id;
    }
 
    @XmlElement(name = "name")
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
 
    public String toString() {
        return id + ":" + name;
    }
}

 

package jaxb.test;

import java.util.List;

import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement(name = "users")
public class UserList {
    List<User> users;
 
    @XmlElement(name = "user")
    public List<User> getUsers() {
        return users;
    }
 
    public void setUsers(List<User> users) {
        this.users = users;
    }
}

 

<?xml version="1.0" encoding="UTF-8"?>
<account id="1">
	<name>ibm</name>
</account>

 

<?xml version="1.0" encoding="UTF-8"?>
<users xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
    <user id="1">
        <name>Unmi</name>
    </user>
    <user id="2">
        <name>She</name>
    </user>
</users>
 
分享到:
评论

相关推荐

    jaxb生成XML例子

    在给定的例子中,我们将深入理解如何使用JAXB注解来生成XML。 1. **@XmlType**: 这个注解用于定义类的属性在XML输出中的顺序。在`WriterXml`类中,propOrder 属性指定了"id", "name", "age", "book"这四个属性的...

    JAXB的例子

    在"Test"这个例子中,我们可以假设有一个XML文档,描述了某个图书信息,例如: ```xml &lt;title&gt;Java编程思想 布鲁斯·艾克尔 机械工业出版社 ``` 对应地,我们有以下的Java类: ```java @XmlRootElement(name...

    Jaxb简单例子

    这个简单的例子将带你深入理解JAXB的基本用法,包括注解的使用和Java与XML之间的互相转换。 **一、JAXB的基本概念** 1. **Java对象到XML**: JAXB允许我们将Java对象直接序列化为XML格式的文档,这称为对象到XML的...

    一个基于java jaxb的序列化例子,非常简单易懂

    在给定的例子"JAXBDemo"中,我们可以预期它包含了一个简单的JAXB使用示例,帮助我们理解这一过程。 首先,让我们了解一下JAXB的工作原理。JAXB的核心思想是通过元数据(如注解或XML Schema)将Java类与XML结构关联...

    jaxb解析xml为对象例子

    **标题:“JAXB解析XML为对象例子”** 在Java开发中,XML作为一种常见的数据交换格式,经常被用于存储和传输数据。Java Architecture for XML Binding(JAXB)是Java平台的标准API,它允许开发者将Java对象绑定到...

    jaxb-ri-2.2.7

    4. **示例和教程**:可能包含演示如何使用JAXB的示例代码(如`samples`目录),这些例子可以帮助初学者快速上手。 5. **构建脚本和配置文件**:如`build.xml`(Ant)或`pom.xml`(Maven)文件,用于构建和测试JAXB ...

    使用jaxb读取配置文件,并使用POI修改excel内容的例子

    在这个例子中,我们关注的是如何使用Java技术栈中的两个关键库:JAXB(Java Architecture for XML Binding)和Apache POI,来实现特定的功能。JAXB用于从XML文件中读取数据,而Apache POI则用于处理Excel文档,特别...

    jaxb解析生成xml

    以下是一个简单的JAXB解析生成XML的例子: ```java import javax.xml.bind.JAXBContext; import javax.xml.bind.Marshaller; import javax.xml.bind.Unmarshaller; public class JaxbExample { public static ...

    JAXB的HelloWorld源码

    在这个例子中,我们通常会创建一个简单的Java类,比如`HelloWorld`,并用JAXB注解来描述如何映射到XML元素。例如: ```java import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation....

    JAXB.zip_jaxb

    在这个例子中,它定义了如何编译、测试和打包JAXB项目。 **catalog.xml** 文件通常用于定义实体解析器的目录,它可以帮助解决XML文档中的外部引用。在JAXB中,它可以用于映射XML架构到本地的Java类,避免网络查找,...

    jaxb解析xml

    JAXB 解析 XML JAXB (Java Architecture for XML Binding) 是一种基于 Java 的 XML 绑定技术,主要功能是根据 DTD 或者 XML Schema 将 XML Element 转化为 Java 类。JAXB 将 XML 文本流转化为 Java Object,把 XML ...

    用JAXB生成一个XML

    ### 使用JAXB生成XML文档详解 #### 一、前言 在现代软件开发过程中,XML(可扩展标记语言)作为一种重要的数据交换格式,被广泛应用于各种应用场景中。特别是在J2EE(Java Platform, Enterprise Edition)领域,...

    JAXB工具

    在给定的例子中,我们看到了如何使用JAXB 2.1.6版本创建和解析XML文档。首先,定义了一个名为`Product`的Java类,该类使用JAXB注解来指定XML映射规则。`@XmlRootElement`注解定义了XML根元素的名称和命名空间,`@...

    jaxb与jpa初应用

    **JAXB与JPA初应用** Java Architecture for XML Binding (JAXB) 和 Java Persistence API (JPA) 是Java开发中的两个重要技术,主要用于处理XML数据和实现对象关系映射(ORM)。在本篇中,我们将深入探讨这两个技术...

    JAVA JAXB 解析XML嵌套子节点为字符串

    在这个例子中,`unmarshal()`方法将XML文件解析成`Root`对象。然后,我们可以通过对象的getter方法获取到嵌套子节点`nested`中的`text`字符串。 如果我们只想获取特定子节点的字符串,而不关心整个对象模型,可以...

    jaxb.zip_jaxb

    **Java Architecture for XML Binding (JAXB)** 是Java平台上的一个标准技术,用于在XML文档和Java对象之间进行数据绑定。它允许开发者将XML结构转换为Java对象,反之亦然,从而简化了XML处理。JAXB提供了两个核心...

    jaxb+list+实体,实现对xml读写

    在这个例子中,`students.xml`是我们的输入和输出文件。`unmarshal`方法用于从XML文件中读取数据,而`marshal`方法则用于将Java对象写入XML文件。`JAXB_FORMATTED_OUTPUT`属性设置为`true`是为了让生成的XML文件更易...

    JAXB实例入门

    这个例子展示了JAXB在处理XML数据时的便利性。 ### 总结 JAXB是Java中处理XML的强大工具,通过注解或配置文件,它可以自动完成Java对象与XML之间的转换,简化了开发流程。了解和掌握JAXB对于任何需要处理XML的Java...

    JAXB开发步骤

    在上述例子中,我们使用了注解来指示JAXB如何将对象结构映射到XML结构。这些注解如@XmlRootElement、@XmlElement和@XmlElementWrapper告诉JAXB对象的哪些属性应该被转换成XML元素。 当执行对象到XML的转换时,JAXB...

Global site tag (gtag.js) - Google Analytics