我不太确定我能做到这一点,但我愿意。我正在读取一个 XML 文件,并且在某些节点上有很多属性,我最终将它们存储在对象内部的变量中。目前,我通过节点解析,获取属性名称,然后通过大量的 if/then/elses 来将其存储在正确的对象变量中。所有这一切都很好。
我希望能够做的是更加动态地做到这一点,有一个将属性名称映射到对象中的变量名称的映射机制。
因此,例如,如果我有一个节点,我可以将数据映射到对象中的 object.city 和 object.addr,而不必为我捕获的每个属性硬编码 if/then。我有几个我这样做的节点/对象,虽然它不会经常改变,但我认为像我描述的那样映射它会更清晰。
在 Java 中甚至可以实现类似的东西吗?
非常感谢。
最佳答案
是的,您可以使用 Reflection API 访问类的字段和方法.但是,如果您的目标只是读取 XML 文件,请不要重新发明轮子——只需使用现有的库,例如 JAXB。 .
关于java - 动态寻址类变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4419543/