XSLT 与 Java集成常见技术关键点

Posted 如是耳闻 -- 睡觉倍爽

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XSLT 与 Java集成常见技术关键点相关的知识,希望对你有一定的参考价值。

通常,对于xml的转化处理我们可以使用XSLT来处理,从而可以提取xml报文中的必要信息生成转化为我们需要的格式报告,比如将xml数据的部分信息自动化筛选后生成文本txt文件报告,csv,html,pdf等报表。但有时候XSLT并不是特别灵活,至少,有时候没有Java代码直接操作xml方便和灵活。

所以,我们需要可以将XSLT和Java代码结合使用。

 

  • 声明必要的前缀并绑定Java类,如下所示,在XSLT中绑定java.lang.Math类。

    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
      xmlns:Math="http://www.math.org/">
      <xsl:script implements-prefix="Math" language="java" src="java:java.lang.Math"/>
      ...
    </xsl:stylesheet>
    					
  • 如下显示了如何使用Java Math勒种的min方法

      <xsl:template name="test">
        <value-of select="Math:min( 100, 101)"/>
      </xsl:template>
    					
  • 在XSLT中我们还可以来构造对象,参加如下示例

    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
      xmlns:Math="http://www.date.org/">
      <xsl:script implements-prefix="Date" language="java" src="java:java.util.Date"/>
    
      <xsl:template name="test">
        <variable name="date" select="Date:new()"/>
        <value-of select="Date:toString( $date)"/>
      </xsl:template>
    </xsl:stylesheet>
    					
  • 传递参数到Java对象如下所示

      <xsl:template name="test">
        <value-of select="Math:min( number( @value1), number( @value2))"/>
      </xsl:template>
    					

以上是关于XSLT 与 Java集成常见技术关键点的主要内容,如果未能解决你的问题,请参考以下文章

Alfred常见使用

XSLT与代码生成

Groovy与Java集成常见的坑

将 XSLT 转换的 XML 片段写入 XMLStreamWriter

XSLT:无法将操作数转换为“结果树片段”

Java技术学习路线图