这节我给大家讲一讲jsp如何处理xml,我们说用到的jar包有standard.jar和jstl.jar和xalan.jar.前两个jar包大家都知道在jstl已经给大家讲过了,那么什么是xalan呢?xalan-java是一套xslt处理器,用来将XML文件转换为HTML,TEXT和XML等其他类型文 件格式。支持XSLT1.0和XPATH 1.0版。开发人员可以通过命令行方式或在JAVA APPLET和SERVLET中使用,并可以作为自己开发的应用程序的类库使用。xalan-java实现的是transformation API for XML(TRaX)接口,此接口为jaxp1.2标准中的一部分。那么什么有时xslt呢?在计算机科学中,XSLT是扩展样式表转换语言(Extensible Stylesheet Language Transformations)的简称,这是一种对XML文档进行转化的语言。我只能给大家上概念上的理解,因为每一个知识点用一本才能讲完,我简简单单的一两句是不能把xalan和xslt所有的知识讲给大家的。大家只能自学了。因为xalan是一个开源项目,已经给大家提供了一个很好的解析xml的过程。下面我们就针对xalan写一个简单的例子。
首先,我们先在tomcat的安装目录webapps下建立一个jstlxml,在此文件夹下有WEB—INF和index.jsp和student.xml。我们在xml写如下代码:
<?xml version="1.0" encoding="UTF-8"?>
<students>
<student id="1">
<name>
<first name="Joe1">Joe</first>
<last name="y1">Y</last>
<middle name="t1">T</middle>
</name>
<grade>
<points>99</points>
<letter>A</letter>
</grade>
</student>
<student id="2">
<name>
<first name="james1">James</first>
<last name="todd">Todd</last>
<middle name="k1">Kmiddle</middle>
</name>
<grade>
<points>92</points>
<letter>B</letter>
</grade>
</student>
<student id="3">
<name>
<first name="kate1">Kate</first>
<last name="wang1">Wang</last>
<middle name="a1">A</middle>
</name>
<grade>
<points>72</points>
<letter>C</letter>
</grade>
</student>
</students>
这就是我们解析的xml文件。我们在index.jsp里写入以下代码,在代码中我主要用到了jstl提供的xml标签
<%@ page contentType="text/html;charset=utf-8" %>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<html>
<head>
<title>index</title>
</head>
<body>
<c:import var="students" url="student.xml" />
<x:parse var="doc" xml="${students}" />
<table border="1">
<tr>
<th>First</th>
<th>Last</th>
<th>Points</th>
<th>Letter</th>
</tr>
<x:forEach var="student" select="$doc/students/student">
<tr>
<td>
<x:out select="name/first/@name" />
</td>
<td>
<x:out select="name/last" />
</td>
<td>
<x:out select="grade/points" />
</td>
<td>
<x:out select="grade/letter" />
</td>
</tr>
</x:forEach>
</table>
</body>
</html>
在WEB—INF下有classes和lib文件夹,lib里有standard.jar,jstl.jar,xalan.jar包,还有4个tld,分别是c-1_0.tld,c-1_0-rt.tld,fmt-1_0.tld,fmt-1_0-rt.tld、所有的文件都配置好了,我们敲入:http://localhost:8080/jstlxml/index.jsp 当得到下图页面说明运行成功了
例子下载
这节我们就讲到这里,下一节我们讲一讲jsp处理数据库的问题。