JAXB无法从XML获取Object

时间:2014-02-21 12:28:50

标签: jaxb

在运行用于将XML转换为Java类对象的java文件时,它提供此输出而不是XML文件

import java.io.File;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Unmarshaller;

public class XMLToObject {
    public static void main(String[] args) {

     try {

        File file = new File("file.xml");
        JAXBContext jaxbContext = JAXBContext.newInstance(Customer.class);

        Unmarshaller jaxbUnmarshaller = jaxbContext.createUnmarshaller();
        Customer customer = (Customer) jaxbUnmarshaller.unmarshal(file);
        System.out.println(customer);

      } catch (JAXBException e) {
        e.printStackTrace();
      }

    }
}

输出: 客户@ 2c2c14f9

请帮我在Object

中获取XML文件输出

2 个答案:

答案 0 :(得分:0)

您目前看到在toString()的实例上调用Customer的结果。您需要使用Marshaller将对象输出到XML。

Marshaller marshaller = jaxbContext.createMarshaller();
marshaller.marshal(customer, System.out);

答案 1 :(得分:0)

嘿所有我找到了解决方案。这是一个愚蠢的错误。我需要调用类的公共getter方法来访问真实数据...谢谢你的帮助.. :))