JSTL_XML

一:说明

  1. 如有转载请标明出处
  2. 必须包含的属性->有默认值的属性->其余属性,中间用回车隔开

二:XML标记库

  Xml标记库主要功能就是为在jsp页面中操作xml提供便利支持,本博文不做详解,<x:out>,<x:set>,<x:if>,<x:when>,<x:choose>,<x:forEach>,<x:otherwise>,<x:param>标记与core标记库中的同名标记的作用基本一样,唯一的区别就是这些标记是处理xml内容的

三:XML标记

1. <x:out>,<x:set>,<x:if>,<x:when>,<x:choose>,<x:forEach>,<x:otherwise>,<x:param>标记与core标记库中的同名标记的作用基本一样,唯一的区别就是这些标记是处理xml内容的

2. <x:parse>标记

示例代码:

Xml文件内容:
<?xml version="1.0" encoding="UTF-8"?>

<peoples>

         <people>

                   <name>达伦·布朗</name>

                   <sex>man</sex>

         </people>

         <people>

                   <name>爱华顿g</name>

                   <sex>little man</sex>

         </people>

         <people>

                   <name>夏洛特·玲玲</name>

                   <sex>women</sex>

         </people>

         <people>

                   <name>休斯顿·魔术师</name>

                   <sex>bigman</sex>

         </people>

</peoples>

peoples.xml


Jsp文件内容:
  <%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/xml" prefix="x" %>

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>Insert title here</title>

</head>

<body>

         <c:import var="file" url="peoples.xml" charEncoding="utf-8"/>

         <x:parse xml="${file}" var="cc"/>

                   <table border="1">

                   <tr>

                            <td>姓名</td>

                            <td>性别</td>

                   </tr>

                   <x:forEach var="n" select="$cc/peoples/people">

                   <tr>

                            <td>

                                     <x:out select="$n/name"/>

                            </td>

                            <td>

                                     <x:out select="$n/sex"/>

                            </td>

                   </tr>

                   </x:forEach>

         </table>

</body>

</html>

xparse.jsp


所有属性:

         Doc:所要解析的XML文件的名称,或者是java.io.Reader类型的对象

         scope:设定var变量的作用范围,默认值:page

         scopeDom:设定varDom变量的作用范围,默认值:page

         var:设定保存解析以后的xml文档内容的变量的名称

         varDom:设定代表所解析的xml文件的org.w3c.dom.Document类型的对象的变量名称

         filter:设定org.xml.sax.XMLFilter类型的一个对象,这个对象可以在解析之前对文件进行过滤操作

         systemId:设定当前要解析的xml文件的URI值

3.<x:transform>

可以实现xsl样式表的转换

示例代码:
<?xml version="1.0" encoding="UTF-8"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

       <xsl:template match="/">

              <!-- TODO: Auto-generated template -->

              <html>

              <body>

              <table border="1">

              <tr>

                     <td>姓名</td>

                     <td>性别</td>

              </tr>

              <xsl:for-each select="peoples/people" >

              <tr>

                     <td><xsl:value-of select="name"/></td>

                     <td><xsl:value-of select="sex"/></td>

              </tr>

              </xsl:for-each>

       </table>

</body>

</html>

       </xsl:template>

</xsl:stylesheet>

people.xsl

<?xml version="1.0" encoding="UTF-8"?>

<peoples>

       <people>

              <name>达伦·布朗</name>

              <sex>man</sex>

       </people>

       <people>

              <name>爱华顿g</name>

              <sex>little man</sex>

       </people>

       <people>

              <name>夏洛特·玲玲</name>

              <sex>women</sex>

       </people>

       <people>

              <name>休斯顿·魔术师</name>

              <sex>bigman</sex>

       </people>

</peoples>

peoples.xml


Transform.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"

    pageEncoding="UTF-8"%>

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

<%@ taglib uri="http://java.sun.com/jsp/jstl/xml" prefix="x" %>

<c:import url="peoples.xml" var="url" charEncoding="utf-8"/>

<c:import url="people.xsl" var="xsl" charEncoding="utf-8"/>

<x:transform doc="${url}"  xslt="${xsl}"/>  

属性介绍:

doc:所要转换的xml文件的名称,或者是java.io.Reader对象

xslt:所要转换的xslt文件的名称,也可以是Reader或者javax.xml.transform.Source类型的对象

scope:设置var变量的保存范围,默认值:page

docSystemId:设置当前要转换的xml文件的uri值

xsltSystemId:设置要转换成的xslt文件的URI值

var:设定保存后内容的变量的名称

result:设定保存后内容的变量的对象,对象类型:javax.xml.transform.Result

JSTL_XML标记库的更多相关文章

  1. JSTL_Format标记库

    JSTL_Format 一:JSTL Format标记库 如有转载,请标明出处 介绍标记属性的时候,按照顺序必须写的->带有默认值的->其他的,中间用回车隔开 在jsp问价开头加上 < ...

  2. JSTL_Core标记库

    一.   说明 如有转载,请标明出处 本博讲解JSTL中的core库 对标记属性进行介绍时,首先介绍必写的属性,然后带有默认值的属性,其次是其余属性,这三类属性中间用空行隔开 二:core标记库库 C ...

  3. JSTL教程 [JSP 标准标记库]

    JSTL教程- - JSP 标准标记库(JSP Standard Tag Library,JSTL)是一个实现 Web 应用程序中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断.数据管理格式 ...

  4. 分布式人工智能标记语言(DAIML)示例

          DAIML(Distributed Artificial Intelligence Markup Language)是用于分布式人工智能系统中智能语言的标记库.DAIML主要分为Patte ...

  5. JSTL 核心标签库

    SP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签,SQL标签. 除了这些,它还提供了 ...

  6. JSTL标准标签库

    有时使用EL和标准动作达不到目的,于是就引入定制标记. 对于JSP页面创作人员来说,定制标记使用起来比脚本要容易一些.不过对于JAVA程序员来说,简历定制标记处理器反而更困难.幸运的是,已经有了一个标 ...

  7. JSP标记

    JSP标记是JSP页面中很重要的组成部分,JSP标记包括指令标记.动作标记和自定义标记.其中自定义标记主要讲述与Tag文件有关的Tag标记. 一 指令标记page Page指令标记,简称page指令, ...

  8. 使用Spring标签库

    A.Spring标签库 Web项目若使用Spring Web MVC并使用JSP作为表现的话.从Spring2.0版本开始提供一套标签库可供使用. 使用标签库无非是易于开发,维护之类云云.这里就不阐述 ...

  9. JSTL(JSP Standard Tag Library ,JSP标准标签库)

    JSTL标签之核心标签   JSTL(JSP Standard Tag Library ,JSP标准标签库)是一个实现 Web应用程序中常见的通用功能的定制标记库集,这些功能包括迭代和条件判断.数据管 ...

随机推荐

  1. XML学习总结二——DTD

    主要用处是约束XML. 1.DTD分为内部DTD与外部DTD两类: 内部DTD:将DTD定义在XML文档的内部 <!DOCTYPE  根元素名  [    元素描述]> 外部DTD < ...

  2. SVN完全备份,增量备份,库同步

    svn备份一般采用三种方式:1)svnadmin dump 2)svnadmin hotcopy 3)svnsync. 优缺点分析: ============== 第一种svnadmin hotcop ...

  3. 常用maven仓库

    常用Maven仓库网址:http://mvnrepository.com/http://search.maven.org/http://repository.sonatype.org/content/ ...

  4. 背水一战 Windows 10 (99) - 关联启动: 关联指定的文件类型, 关联指定的协议

    [源码下载] 背水一战 Windows 10 (99) - 关联启动: 关联指定的文件类型, 关联指定的协议 作者:webabcd 介绍背水一战 Windows 10 之 关联启动 关联指定的文件类型 ...

  5. OkHttp 设置 User-Agent 教程

    我们知道OkHttp走的并不是原生的http请求,因此在header里面并没有真正的User-Agent,而是“okhttp/版本号”这样的字符串,因为后台需要统计信息,要求传入正确的User-Age ...

  6. Javascript高级编程学习笔记(28)—— BOM(2)window对象2

    今天讲一下window对象和浏览器导航,弹窗等有关的内容 导航和打开窗口 window.open() 用于导航到某个特定 url 该方法接收四个参数 1.url 2.窗口目标(当页面中有多个框架fra ...

  7. 使用Consul 实现 MagicOnion(GRpc) 服务注册和发现

    1.下载打开Consul 笔者是windows下面开发的(也可以使用Docker). 官网下载windows的Consul https://www.consul.io/ 使用cmd窗口打开,输入con ...

  8. Inotify+Rsync实现Linux服务器文件同步

    做这个功能的时候遇到了好多坑,在此感谢一下这篇博客 http://kerry.blog.51cto.com/172631/734087/  ,大家参照这篇博客就能实现该功能. 另外如果想详细了解一下的 ...

  9. C 线性表的顺序存储实现及插入、删除等操作示例

    一.线性表的定义 线性表(Linear List)是由同一类型元素构成的有序序列的线性结构.线性表中元素的个数称为线性表的长度:线性表内没有元素(长度为0)时,称为空表:表的起始位置称为表头,表的结束 ...

  10. 使用pyenv与pyenv-virtualenv管理Python版本与虚拟环境

    在上一篇博客中,我介绍了如何在ubutnu 18.04中安装pyenv.这一次我将介绍如何使用pyenv与pyenv-virtualenv管理Python版本与虚拟环境. 0.相关命令 首先使用pye ...