【发布时间】:2013-03-27 02:26:53
【问题描述】:
我有一个 xml 内容,我不知道它属于哪个类。我需要使用 XML 中可用的信息创建一个动态 java 对象。有可能这样做吗?它可能是简单的 java 对象,然后我们可以使用 java 反射从该对象中获取值。例如,
<Employee>
<name>Jack</name>
<designation>Manager</designation>
<department>Finance</department>
</Employee>
所以,我需要从这个 xml 转换为 Employee 对象。但是,我的类路径中没有 Employee 类。是否可以使用提供的 XML 创建对象?
【问题讨论】:
-
这是在运行时? XML 可以是任何格式还是特定格式?
-
是的,它在运行时,XMl 可以是任何格式....
-
你可以用足够通用的东西来表示 XML 对象,比如
HashMap<String, Object>。如果你想使用特定的类,你必须限制可能性。 -
可以在
byte[]和load it 中构建class file,但这并不容易;您是否有充分的理由需要将 XML 加载到动态创建的类型中? -
如果 XML 可以是任何格式,你怎么知道你想访问什么?反射数据检索背后的逻辑是什么?我之所以问,是因为我认为这是 XPath 的经典候选者,但我不完全确定您的用例。