Java 用JAXB解析响应XML

Java 用JAXB解析响应XML,java,xml,jaxb,Java,Xml,Jaxb,我想使用JAXB从非wsdl web服务调用读取响应。 我正在使用HttpURLConnection发送POST请求,并得到响应。 我的问题是,我是否从响应流生成一个xml文档,然后使用jaxb生成java对象?或者,可以在响应流中动态使用jaxb吗? 这将是一个web应用程序,我将无法在任何地方存储生成的xml文档,因此,如果我需要生成xml文档,如果我不能动态执行jaxb,我如何存储它以供jaxb使用?可以接受输入流,这将消除将其解析为xml文档的需要 以下是一个示例: String uri

我想使用JAXB从非wsdl web服务调用读取响应。 我正在使用HttpURLConnection发送POST请求,并得到响应。 我的问题是,我是否从响应流生成一个xml文档,然后使用jaxb生成java对象?或者,可以在响应流中动态使用jaxb吗? 这将是一个web应用程序,我将无法在任何地方存储生成的xml文档,因此,如果我需要生成xml文档,如果我不能动态执行jaxb,我如何存储它以供jaxb使用?

可以接受输入流,这将消除将其解析为xml文档的需要

以下是一个示例:

String uri =
    "http://localhost:8080/CustomerService/rest/customers/1";
URL url = new URL(uri);
HttpURLConnection connection =
    (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.setRequestProperty("Accept", "application/xml");

JAXBContext jc = JAXBContext.newInstance(Customer.class);
InputStream xml = connection.getInputStream();
Customer customer =
    (Customer) jc.createUnmarshaller().unmarshal(xml);

connection.disconnect();
有关更多信息,请参阅: