Java 如何使用jaxb解析xml
您好,我正在尝试获取xml数据。。 结构如下:Java 如何使用jaxb解析xml,java,xml,jaxb,Java,Xml,Jaxb,您好,我正在尝试获取xml数据。。 结构如下: A. B 太平绅士13 JP_1_0 17:10:00 我已经使用jaxb提取了JourneypatternId,但我无法获得出发时间和往返信息,因为journey模式id在vechilejourney标记中有引用 从下载trang.jar 转到命令提示符, 要将xml转换为xsd,请键入以下命令 java -jar trang.jar transport.xml transport.xsd 将xml结构转换为xsd并编写以下命令后 xjc
A.
B
太平绅士13
JP_1_0
17:10:00
我已经使用jaxb提取了JourneypatternId,但我无法获得出发时间和往返信息,因为journey模式id在vechilejourney标记中有引用 从下载trang.jar
转到命令提示符,
要将xml转换为xsd,请键入以下命令
java -jar trang.jar transport.xml transport.xsd
将xml结构转换为xsd并编写以下命令后
xjc -p com.jaxb.test.xml.beans transport.xsd
上面的命令将从transport.xsd生成java bean
之后,您可以按如下所示解组xml
try
{
final JAXBContext jc = JAXBContext.newInstance(Transport.class);
final Unmarshaller unmarshaller = jc.createUnmarshaller();
try
{
final Transport transport = (Transport) unmarshaller.unmarshal(new FileReader(TRANSPORT_XML));
} catch (final FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (final JAXBException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
参考资料:您是否遵循了我遵循的是,但本教程仅描述了如何解析xml而不是操作所有内容,我关心的是如何操作我们将检索的数据假设我从jaxb获得id,此id用作xml中的参考;如何到达那个块,我们需要dom解析吗?您可以在jaxb中使用xpath。newContext(this).iterate(//JourneyPatternRef[@id='JP_1_0']);
try
{
final JAXBContext jc = JAXBContext.newInstance(Transport.class);
final Unmarshaller unmarshaller = jc.createUnmarshaller();
try
{
final Transport transport = (Transport) unmarshaller.unmarshal(new FileReader(TRANSPORT_XML));
} catch (final FileNotFoundException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (final JAXBException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}