【发布时间】:2011-10-23 08:13:24
【问题描述】:
我拥有 XML 文件中的所有数据,并且标记良好。数据是简历,有 1000 份。 我必须用 Java 构建一个前端,我将在其中以 2 种方式显示这些简历:
- 一个完整的 HTML 文件。
- 以及所选文件的完整 HTML 文件。例如:用户选择Java,那么那些带有Java的简历将以HTML格式显示。
我编写了显示所有简历的 XSLT 代码。现在我对另一种类型的显示器感到很困惑。我需要专家的建议。 :)
如前所述,我还需要 2 个单独的 XSLT 来以 2 种方式显示简历。
*更新:
public static void main(String[] args) throws IOException, URISyntaxException, TransformerException
{
TransformerFactory factory = TransformerFactory.newInstance();
Source xslt = new StreamSource(new File("Resume.xslt"));
Transformer transformer = factory.newTransformer(xslt);
Source text = new StreamSource(new File("Resume.xml"));
transformer.transform(text, new StreamResult(new File("ResumeAll.html")));
}
以上代码是使用 XSLT 将 XML 转换为 HTML 的 Java 代码。
此代码将显示所有简历。现在要显示特定的简历或选定的简历,我必须使用setParamaters() 方法传递参数。对吧?
以下是 XSLT 示例代码:
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:output method='html' media-type='text/html'/>
<xsl:template match="/">
<html>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<xsl:template match="Resume">
<table align='center' width='800' style="font-family:tahoma; font-size:13pt;">
<tr><td>
<xsl:apply-templates/>
</td></tr>
</table>
</xsl:template>
<xsl:template match="Name">
<table align="center"><tr>
<th style="font-size:24pt; color:navy">
<xsl:apply-templates/>
</th>
</tr></table>
</xsl:template>
上面的 Java 代码和 XSLT 文件会将 XML 转换为 HTML 文件,该文件将显示所有简历。
我应该怎么做才能根据某些条件显示简历?我需要 2 个不同的 XSLT 文件吗?还是只显示显示的那一项,只需稍加修改即可使用?
【问题讨论】:
-
您在筛选必要的简历以进行展示时遇到问题了吗?你用什么javax.xml.transform.Source?
-
如果您显示您为第一次显示编写的代码(至少总结一下),我们可以更好地建议如何添加第二次。
-
这应该是对您已经工作的代码的一个非常小的修改。如果不查看您现有的代码,并且不知道您为什么会发现它很困难,就很难就该修改提出建议。
-
@_John:这是我们不应该问的一个例子:太笼统,没有例子,好像在问“如何在生活中做得好”——每个人都会收到很多答案它们与问题本身一样普遍和无用。请编辑和改进。
-
@LarsH-您的请求已完成。