`
ynp
  • 浏览: 437282 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

xslt 通过springmvc、js转换的方式

阅读更多
--》待翻译的xml文件内容
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<citizens>
	<citizen>
		<ssn>Z345T</ssn>
		<firstname>Cheryl</firstname>
		<lastname>Johnson</lastname>
		<role>Manager</role>
		<salary>12000</salary>
	</citizen>
	<citizen>
		<ssn>Z446T</ssn>
		<firstname>John</firstname>
		<lastname>Smith</lastname>
		<role>Employee</role>
		<salary>1000</salary>
	</citizen>
	<citizen>
		<ssn>Z335T</ssn>
		<firstname>Justin</firstname>
		<lastname>Claire</lastname>
		<role>Senior Manager</role>
		<salary>14000</salary>
	</citizen>
	<citizen>
		<ssn>Z389T</ssn>
		<firstname>Clark</firstname>
		<lastname>Rick</lastname>
		<role>Employee</role>
		<salary>2000</salary>
	</citizen>
</citizens>

--》xslt文件内容
<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
	version="1.0">
	<xsl:output method="html" indent="yes" />
	<xsl:template match="/">
		<html>
			<body>
				<div align="center">
					<xsl:apply-templates />
				</div>
			</body>
		</html>
	</xsl:template>
	<xsl:template match="citizens">
		<table border="1" width="100%">
			<xsl:for-each select="citizen">
				<tr>
					<td>
						<xsl:value-of select="ssn" />
					</td>
					<td>
						<xsl:value-of select="firstname" />
					</td>
					<td>
						<xsl:value-of select="lastname" />
					</td>
					<td>
						<xsl:value-of select="role" />
					</td>
					<td>
						<xsl:value-of select="salary" />
					</td>
				</tr>
			</xsl:for-each>
		</table>
	</xsl:template>
</xsl:stylesheet>

--》springmvc controller代码
package net.codejava.spring.controller;

//参考http://www.codejava.net/frameworks/spring/spring-mvc-xstlview-and-xsltviewresolver-example
import java.io.File;
import java.io.IOException;
import java.io.StringReader;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.xml.transform.Source;
import javax.xml.transform.stream.StreamSource;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class HomeController {
	@RequestMapping(value = "/")
	public ModelAndView goHome(HttpServletResponse response) throws IOException {
		return new ModelAndView("home");
	}

	@RequestMapping(value = "/viewXSLT")
	public ModelAndView viewXSLT(HttpServletRequest request,
			HttpServletResponse response) throws IOException {
/*		//从xml文件翻译
		String xmlFile = "resources/citizens.xml";
		String contextPath = request.getSession().getServletContext().getRealPath("");
		String xmlFilePath = contextPath + File.separator + "WEB-INF" + File.separator + xmlFile;
		Source source = new StreamSource(new File(xmlFilePath));*/
		//从xml字符串翻译
		String xmlStr = "<?xml version='1.0' encoding='UTF-8' standalone='no'?><citizens>	<citizen>		<ssn>Z345T</ssn>		<firstname>Cheryl</firstname>		<lastname>Johnson</lastname>		<role>Manager</role>		<salary>12000</salary>	</citizen>	<citizen>		<ssn>Z446T</ssn>		<firstname>John</firstname>		<lastname>Smith</lastname>		<role>Employee</role>		<salary>1000</salary>	</citizen>	<citizen>		<ssn>Z335T</ssn>		<firstname>Justin</firstname>		<lastname>Claire</lastname>		<role>Senior Manager</role>		<salary>14000</salary>	</citizen>	<citizen>		<ssn>Z389T</ssn>		<firstname>Clark</firstname>		<lastname>Rick</lastname>		<role>Employee</role>		<salary>2000</salary>	</citizen></citizens>";
		Source source = new StreamSource(new StringReader(xmlStr));
		// adds the XML source file to the model so the XsltView can detect
		ModelAndView model = new ModelAndView("XSLTView");
		model.addObject("xmlSource", source);
		return model;
	}
}

--》spring mvc配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p"
	xmlns:context="http://www.springframework.org/schema/context"
	xmlns:mvc="http://www.springframework.org/schema/mvc"
	xsi:schemaLocation="
    http://www.springframework.org/schema/beans 
    http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context-3.0.xsd
    http://www.springframework.org/schema/mvc
    http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
    ">
	<!-- 默认扫描的包路径 -->
	<context:component-scan base-package="net.codejava.spring" />
	<!-- 添加注解驱动 -->
	<mvc:annotation-driven />
	<!-- 定义跳转的文件的前后缀 -->
	<bean id="XSLTViewResolver"
		class="org.springframework.web.servlet.view.xslt.XsltViewResolver">
		<property name="order" value="1" />
		<property name="sourceKey" value="xmlSource" />
		<property name="viewClass"
			value="org.springframework.web.servlet.view.xslt.XsltView" />
		<property name="viewNames">
			<array>
				<value>XSLTView</value>
			</array>
		</property>
		<property name="prefix" value="/WEB-INF/xsl/" />
		<property name="suffix" value=".xsl" />
	</bean>
	<bean id="JSPViewResolver"
		class="org.springframework.web.servlet.view.InternalResourceViewResolver">
		<property name="order" value="2" />
		<property name="prefix" value="/WEB-INF/jsp/" />
		<property name="suffix" value=".jsp" />
	</bean>
</beans>

--》xslt配置文件
XSLTView.(class)=org.springframework.web.servlet.view.xslt.XsltView
XSLTView.sourceKey=xmlSource 
XSLTView.url=/WEB-INF/xsl/XSLTView.xsl


--->xslt_client2.jsp xslt_client.jsp 为客户端转换处理方法

---》参考
http://www.codejava.net/frameworks/spring/spring-mvc-xstlview-and-xsltviewresolver-example
http://tech.it168.com/KnowledgeBase/Articles/8/6/a/86a8266e3eeb9654020fbd3d03545c78.htm
分享到:
评论

相关推荐

    使用XSLT将XML文档转换成HTML文档

    通过 XSLT,我们可以轻松地将 XML 文档转换成 HTML 文档,以便在 Web 浏览器中显示。 在本文中,我们将使用一个简单的示例来演示如何使用 XSLT 将 XML 文档转换成 HTML 文档。我们将创建一个 XML 文档,用于存储...

    基于XSLT的XML文档转换技术

    基于XSLT的XML文档转换技术基于XSLT的XML文档转换技术基于XSLT的XML文档转换技术基于XSLT的XML文档转换技术基于XSLT的XML文档转换技术

    XML$XSLT$HTML$JAVASCRIPT转换实例

    通过这种方式,XML数据可以根据需求转换成适合浏览器显示的HTML,或者用于其他目的的格式。 HTML(HyperText Markup Language)是网页内容的标准表示语言,它定义了网页的结构和样式。通过使用HTML标签,我们可以...

    从 XSLT 样式表调用 JavaScript

    XSLT(Extensible Stylesheet Language Transformations)是一种用于转换XML文档的语言,允许开发者以高度灵活的方式操作和重新格式化XML数据。而JavaScript则是一种广泛使用的脚本语言,能够提供动态处理和编程逻辑...

    java_xslt转换xml

    XSLT则是用来转换XML文档的语言,它允许我们定义一系列规则,将源XML文档按照特定的方式转换为新的XML、HTML或者其他格式。 在Java中,JAXP包含两个主要的接口:`javax.xml.transform.Transformer` 和 `javax.xml....

    xslt与xpath入门转换xml文档与数据

    1. **XSLT模板**:XSLT通过模板来定义转换规则。每个模板都有一个匹配模式,当XML文档中有与之匹配的节点时,该模板就会被应用。 2. **选择器(Selectors)**:在XSLT中,选择器是XPath表达式,用于找到需要处理的...

    《XSLT与XPath入门:转换XML文档与数据》 [PDF]

    XML内容管理应用程序的增长刺激了对XSLT和Xpath技能的要求.本入门教程提供了XSLT处理模型的...XSLT 是一种用于将 XML 文档转换为 XHTML 文档或其他 XML 文档的语言。  XPath 是一种用于在 XML 文档中进行导航的语言。

    XSL基础教程 从 XSLT 样式表调用 JavaScript

    通过深入学习和实践,你将能够熟练运用XSLT进行XML数据的处理和转换,同时也能理解如何在XSLT样式表中调用JavaScript,从而增强XML文档的动态处理能力。 在压缩包中的“XSL_Document”文件可能包含了具体的示例代码...

    javascript xml xsl xslt

    例如,一个常见的应用场景是,服务器端生成XML数据,客户端通过JavaScript使用XMLHttpRequest对象获取XML文件,接着使用XSLT对XML进行转换,生成HTML片段,最后将这些HTML插入到网页的适当位置,实现动态渲染。...

    xslt例子(转换修改xml)

    通过分析样例,我们可以更深入地理解XSLT的工作方式和应用场景。 这个压缩包中的例子是学习和实践XSLT转换的良好起点。你可以打开样例,查看其结构,尝试理解每部分的作用,并用它来处理自己的XML数据,以直观地...

    XSLT与XPath入门转换XML文档与数据

    ### XSLT与XPath入门:转换XML文档与数据 #### 一、XSLT与XPath基础知识 **XSLT(Extensible Stylesheet Language Transformations)**是一种基于XML的标准语言,用于将一个XML文档转换成另一种XML文档或者HTML...

    xslt中调用java

    通过JAXP的Transformer接口,我们可以在XSLT转换过程中动态插入Java代码。首先,创建一个`javax.xml.transform.TransformerFactory`实例,然后使用`newTransformer()`方法加载XSLT样式表。在`Transformer`对象上设置...

    JSP结合XML+XSLT将输出转换HTML

    通过这种方式,我们可以利用JSP、XML和XSLT将结构化的XML数据转化为用户友好的HTML格式,从而在Web应用程序中展示。这种技术在处理复杂的数据结构和自定义布局时非常有用,因为它允许我们分离数据和表现层,遵循了...

    C#的一个XSLT转化的例子

    本示例涉及的是使用C#编程语言来执行XSLT转换的过程,这对于开发人员来说是一个重要的技能,因为它允许他们根据需求动态地改变XML文档的结构和呈现方式。 首先,我们需要理解XSLT的基本概念。XSLT使用模板匹配来...

    java中使用xslt转换xml成为另一个xml

    在Java编程环境中,XML(可扩展标记语言)和XSLT(可扩展样式表语言转换)是处理和转换XML文档的常见工具。XSLT是一种专门用于将XML文档转换为其他XML、HTML或文本格式的语言。本文将详细介绍如何在Java中使用XSLT来...

    用javascript以xslt显示xml_demo

    在这个"用javascript以xslt显示xml_demo"的示例中,我们将探讨如何利用JavaScript来处理XML数据,并通过XSLT将其转换成易于在网页上展示的形式。 首先,理解XML和XSLT的基础概念是至关重要的。XML是一种结构化数据...

    使用 XSLT 样式表转换 Web 服务 WSDL 文档的技巧和诀窍

    【使用XSLT转换Web服务WSDL文档的技巧和诀窍】 在Web服务领域,WSDL(Web Services Description Language)文档扮演着至关重要的角色,它用XML格式详细描述了服务接口和实例的位置。WSDL的XML表示使得各种开发工具...

    ASP处理XSLT转换XML的实现

    ### ASP处理XSLT转换XML的实现 ...通过上述步骤,我们可以清晰地了解如何使用ASP结合XSLT来转换XML文档。这种方式不仅简单高效,而且易于维护。对于需要频繁处理XML数据的应用场景来说,这是一种非常实用的技术方案。

Global site tag (gtag.js) - Google Analytics