`

Java Architecture for XML Binding (JAXB)

阅读更多
Java Architecture for XML Binding (JAXB)

http://java.sun.com/developer/technicalArticles/WebServices/jaxb/

简单例子:
             InputStream inputStream = TerminalServiceImpl.class.getResourceAsStream("Product.xml");
            BufferedReader reader = new BufferedReader(new InputStreamReader(inputStream, "UTF-8"));
            StringBuffer XML = new StringBuffer();
            String temp = "";
            while ((temp = reader.readLine()) != null) {
                XML.append(temp.trim());
            }

            JAXBContext context = JAXBContext.newInstance(ProducerInfo.class);
            Unmarshaller unmarshaller = context.createUnmarshaller();

            DocumentBuilderFactory builderFactory = DocumentBuilderFactory
                    .newInstance();
            DocumentBuilder db = builderFactory.newDocumentBuilder();
            InputSource is = new InputSource();
            is.setCharacterStream(new StringReader(XML.toString()));
            Document document = db.parse(is);

            Element element = document.getDocumentElement();
            NodeList nodeList = element.getChildNodes();
            for (int i = 0; i < nodeList.getLength(); i++) {
                Node node = nodeList.item(i);
                ProducerInfo producerInfo = (ProducerInfo) unmarshaller
                        .unmarshal(node);
             }

xml:
<?xml version="1.0" encoding="UTF-8"?>
<Producers>

    <ProducerInfo>
        <producerId>JinDu</producerId>
        <producerName>金都酒店</producerName>
        <producerAddress>澳門南灣大馬路時代商業中心</producerAddress>
        <tel>(853)326888</tel>
        <ProductInfo>
            <name>金都酒店娱乐券</name>
            <content>在本机上人民币兑换港币的汇率为 100:99</content>
            <price>10000.00</price>
            <totalPrice>0.10</totalPrice>
            <picture>JinDou_10000.gif</picture>
        </ProductInfo>
        <ProductInfo>
            <name>金都酒店娱乐券</name>
            <content>在本机上人民币兑换港币的汇率为 100:99</content>
            <price>30000.00</price>
            <totalPrice>0.30</totalPrice>
            <picture>JinDou_30000.gif</picture>
        </ProductInfo>
    </ProducerInfo>
<Producers>

ProducerInfo 类:
@XmlAccessorType(AccessType.FIELD)
@XmlRootElement(name = "ProducerInfo")
public class ProducerInfo {
    @XmlElement(name = "ProductInfo")
    private List<ProductInfo> products;
    //other property miss....
}

分享到:
评论

相关推荐

    jaxb 2.0 java architecture for xml binding

    THE Java™Architecture for XML Binding (JAXB) provides a fast and convenient way to bind between XML schemas and Java representations, making it easy for Java developers to incorporate XML data and ...

    JAXB_Java Architecture For XML Binding

    NULL 博文链接:https://rayoo.iteye.com/blog/1233534

    JAXBDemo:JAXB(Java Architecture for XML Binding)的演示,它允许在 XML 和 java 类之间轻松转换

    JAXBDemo 的代码库。 JAXB 代表 Java Architecture for XML Binding,它允许在 XML 和 java 类之间轻松转换。

    Android支持JAXB(Java Architecture for XML Binding)

    在android 6.0下,应用JAXB jar包根据XML Schema解析XML文件。

    JAXB 利用xsd文件生成java类

    编写xsd文件,利用jaxb生成java类。

    JAXB完成XML和Java对象的互转

    JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术。该过程中,JAXB也提供了将XML实例文档反向生成Java对象树的方法,并能将Java对象树的内容重新写到XML实例...

    JAXB与xml相互转换实例

    JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术。JAXB与xml相互转换实例。

    Java and XML(英文第三版)

    and Java Architecture for XML Binding (JAXB). The chapters on web technology have been entirely rewritten to focus on the today's most relevant topics: syndicating content with RSS and creating Web ...

    用JAXB来实现Java程序配置的简单方法

    程序的自定义设置是一个重要的功能,...本文介绍了用JAXB来实现Java程序配置,JAXB即Java Architecture for XML Binding,xml在java语言中的一个新规范,可以方便的从xml文件到java类,以及从java类到xml文件的转换。

    JAXB的例子

    JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术。主要功能是生成XML文件和解析XML文件。

    JAXB使用经验总结

    1. 什么是JAXB?  Java Architecture for XML Binding (JAXB) 是一个业界的标准,是一项可以根据XML

    JAVA6新特性介绍

    JAXB是Java Architecture for XML Binding的缩写,可以将一个Java对象转变成为XML格式,反之亦然。我们把对象与关系数据库之间的映射称为ORM, 其实也可以把对象与XML之间的映射称为OXM(Object XML Mapping). 原来...

    ae-jaxb.zip

    此包专门针对android中的jaxb开发。 JAXB是Oracle(sun)公司的JavaBean & XML绑定框架(Java Architecture for XML Binding)

    jaxb-ri-2.3.0.zip

    JAXB (Java Architecture for XML Binding) 的主要功能是根据DTD或者XML Schema将XML Element转化为Java类。将XML文本流转化为Java Object,把XML Processing转化为对类的一些属性的访问。简单的来说,它可以让你...

    spring O/X 映射

    Spring 3.0 的一个新特性是 O/X Mapper。O/X 映射器这个概念并不新鲜,O 代表 Object,X 代表 XML。...其他这样的工具包括 XMLBeans、Java Architecture for XML Binding (JAXB)、JiBX 和 XStream。

    返利网java源码-jaxb:用于XML绑定类的Java架构的JRuby脚本

    Architecture for XML Binding 的首字母缩写词。 它构成了一个用于处理 XML 文档的便捷框架,与以前可用的方法(例如遵循文档对象模型 (DOM) 的方法)相比,具有显着的优势。 (来自 JAXB 教程) JAXB 运行时库由 ...

    Java中对XML的解析详解

    目前我知道的JAVA解析XML的方式有:DOM, SAX, StAX;如果选用这几种,感觉还是有点麻烦;如果使用:JAXB(Java Architecture for XML Binding),个人觉得太方便了

    XSD实体装换工具

    JAXB(Java Architecture for XML Binding) 是一个业界的标准,是一项可以根据XML Schema产生Java类的技术。该过程中,JAXB也提供了将XML实例文档反向生成Java对象树的方法,并能将Java对象树的内容重新写到 XML实例...

    Java下3中XML解析 DOM方式、SAX方式和StAX方式

    目前我知道的JAVA解析XML的方式有:DOM, SAX, StAX;如果选用这几种,感觉还是有点麻烦;如果使用:JAXB(Java Architecture for XML Binding),个人觉得太方便了

    java7帮助文档

    This release contains Java API for XML Processing (JAXP) 1.4.5, supports Java Architecture for XML Binding (JAXB) 2.2.3, and supports Java API for XML Web Services (JAX-WS) 2.2.4. ...

Global site tag (gtag.js) - Google Analytics