将XML转换为Java对象
我只是想知道是否有人可以向我展示一种从这个示例将XML文件转换为Java对象的快速方法:将XML转换为Java对象,java,xml,converter,calculator,Java,Xml,Converter,Calculator,我只是想知道是否有人可以向我展示一种从这个示例将XML文件转换为Java对象的快速方法: - <VM-DataCalculator> - <device name="Blackberry" fname="BlackBerry"> - <dataCategory> <name>email</name> <datarate>0.002</datarate> <max>300</max
- <VM-DataCalculator>
- <device name="Blackberry" fname="BlackBerry">
- <dataCategory>
<name>email</name>
<datarate>0.002</datarate>
<max>300</max>
<percent>12</percent>
<timeunit>month</timeunit>
</dataCategory>
- <dataCategory>
<name>emailAttachment</name>
<datarate>0.2</datarate>
<max>100</max>
<percent>10</percent>
<timeunit>month</timeunit>
</dataCategory>
-
-
-
电子邮件
0.002
300
12
月
-
电子邮件附件
0.2
100
10
月
完整文件可在以下位置获得:
如果有任何帮助,我们将不胜感激。除了Java框架之外,不使用任何东西的标准解决方案将非常有用。有 JAXP有点臃肿,要将一些XML解析为DOM,必须执行以下操作:
DocumentBuilderFactory dbfactory = DocumentBuilderFactory.newInstance();
dbfactory.setNamespaceAware(true);
DocumentBuilder domparser = dbfactory.newDocumentBuilder();
Document doc = domparser.parse("http://www.virginmobile.ca/en/catalogue/VMDataCalculator.xml");
你需要JAXB。这就是它的基本工作原理,您可以创建模型类
@XmlRootElement(name="VM-DataCalculator")
class VMDataCalculator {
@XmlElement(name = "device")
List<Device> devices;
}
@XmlRootElement
class Device {
@XmlElement(name = "dataCategory")
List<DataCategory> dataCategories;
}
@XmlRootElement
class DataCategory {
@XmlElement
String name;
....
}
这里有更多详细信息您是指XML的DOM模型吗?请阅读以下内容:重复:
VMDataCalculator c = JAXB.unmarshal(new File("1.xml"), VMDataCalculator.class);