我有xml格式的数据如下
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Row>
<Sales_Doc>OR</Sales_Doc>
<Sales_Org>0001</Sales_Org>
<Dist_Ch>01</Dist_Ch>
<Division>01</Division>
<Sold_to_Party>SCEM_02</Sold_to_Party>
<MatNo/>
<Net_Weight>PC</Net_Weight>
<Net_Weight_Item>590000</Net_Weight_Item>
<Weight_Unit>KG/Weight_Unit>
<Sales_Unit>PC</Sales_Unit>
</Row>
</xml>
我需要使用jsp或java语言将其转换为表格或网格格式。 请分享您的想法
此致
喜
答案 0 :(得分:0)
您可以解析xml文件,如下所示:
<%
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
Document doc = db.parse("http://localhost:8080/practice/test.xml");
NodeList nl= doc.getElementsByTagName("Sales_Doc");
NodeList n2= doc.getElementsByTagName("Sales_Org");
NodeList n3= doc.getElementsByTagName("Dist_Ch");
NodeList n4= doc.getElementsByTagName("Division");
NodeList n5= doc.getElementsByTagName("Sold_to_Party");
// here more nodes in your xml file ....
%>
并在jsp页面中显示如下:
<table>
<tr>
<%
for(int i=0;i<3;i++)
{
%>
<td><%= nl.item(i).getFirstChild().getNodeValue() %></td>
<td><%= n2.item(i).getFirstChild().getNodeValue() %></td>
<td><%= n3.item(i).getFirstChild().getNodeValue() %></td>
<td><%= n4.item(i).getFirstChild().getNodeValue() %></td>
// here more tds depending on your xml file ...
</tr>
<%
}
%>
</table>
参考http://wowjava.wordpress.com/2010/04/02/displaying-xml-data-in-jsp-page/
另一种方法是使用xslt:
xslt:XSLT(可扩展样式表语言转换)是一种基于XML的声明性语言,用于转换XML文档。原始文件没有改变;相反,基于现有文档的内容创建新文档。2新文档可由处理器以标准XML语法或其他格式(例如HTML或纯文本)序列化(输出)。{ {3}} XSLT最常用于在不同的XML模式之间转换数据或将XML数据转换为网页或PDF文档。