gpt4 book ai didi

java - 将文档类型反序列化为 Java 类

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:03:42 27 4
gpt4 key购买 nike

是否可以将“org.w3c.dom.Document”类型反序列化为 Java 类?我们有这个类 (Employee),并且我们的应用程序中有一个现有方法调用 Web 服务并返回 Employee 类的“Document”类型。我们可以将 Document 序列化为 Employee 类吗?

你能举个例子吗?我从 Internet 上找到的大部分示例读取目录中的 XML 文件,然后将其反序列化到类中。但在我们的场景中,该对象是一个文档类型。

我想要实现的是如下(伪代码):

String employeeID = "12344444";
org.w3c.dom.Document xmlEmployee = helperClass.callWebServiceEmployee(employeeID);

EmployeeClass employee = new EmployeeClass();

employee = (EmployeeClass)xmlEmployee.

最佳答案

人们不急于帮助您的部分原因是您用错了术语。从 DOM 对象到特定领域的 Java 对象不是序列化。它是将一种对象形式翻译成另一种对象形式。序列化是指从对象形式(例如 DOM)到串行形式;例如XML。

(而且它也不是反序列化:-))


无论如何...

鉴于您目前所处的位置,我认为这种方法应该可行:

  1. 将 DOM 对象序列化为 XML。

  2. 使用 XStream 或 JAXB 或其他“XML 绑定(bind)”技术将 XML 反序列化为 POJO。

这不是最有效的方法(就运行时成本而言),但我怀疑有效的方法需要实现目前不存在的映射/绑定(bind)技术,并且(坦率地说)对其他人。

但是我不知道你为什么首先从 DOM 对象开始。这对我来说意义不大:

  • 如果是通过解析XML得到DOM对象,那么最好从XML入手,直接进入第2步。

  • 如果您以其他方式构建 DOM ..... 为什么?

关于java - 将文档类型反序列化为 Java 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24967352/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com