`

标签的用法

    博客分类:
  • jstl
阅读更多
描述 : 标签允许包含另一个 JSP  页面到本页面来。jsp有两种内置机制可以将来自不同 URL 的内容合并到一个 JSP 页面:include 伪指令和 <jsp:include> 操作。不过,不管是哪种机制,要包含的内容都必须属于与页面本身相同的 Web 应用程序(或 servlet 上下文)。两个标记之间的主要区别在于: include 伪指令在页面编译期间合并被包含的内容,而 <jsp:include> 操作却在请求处理 JSP 页面时进行。
core 库的 <c:import>和 <jsp:include> 一样, <c:import> 也是一种请求时操作,它的基本任务就是将其它一些 Web 资源的内容插入 JSP 页面中。 通过 url 属性指定将要导入内容的 URL,这个属性是 <c:import> 的唯一一个必选属性。这里允许使用相对 URL,并且根据当前页面的 URL 来解析这个相对 URL。但是,如果 url 属性的值以斜杠开始,那么它就被解释成本地 JSP 容器内的绝对 URL。如果没有为 context 属性指定值,那么就认为这样的绝对 URL 引用当前 servlet 上下文内的资源。如果通过 context 属性显式地指定了上下文,那么就根据指定的 servlet 上下文解析绝对(本地)URL。 但 <c:import> 操作并不仅仅限于访问本地内容。也可以将包含协议和主机名的完整 URI 指定为 url 属性的值。实际上,协议甚至不仅局限于 HTTP。 <c:import> 的 url 属性值可以使用 java.net.URL 类所支持的任何协议。

语法 :
语法1:资源的内容使用String对象向外暴露
<c:import url="url" [context="context"]
[var="varName"] [scope="{page|request|session|application}"] [charEncoding="charEncoding"]>
内容
</c:import>
语法2:资源的内容使用Reader对象向外暴露。
<c:import url="url" [context="context"]
varReader="varReaderName" [charEncoding="charEncoding"]>
内容
</c:import>

属性 :
属性名
描述
类型
是否接受动态值
是否支持 EL
是否
必须
默认值
说明

url
统一资源定位器
String
true
Y


待导入资源的URL,可以是相对路径和绝对路径,并且可以导入其他主机资源

context
上下文
String
true
Y


当使用相对路径访问外部context资源时,context指定了这个资源的名字。

var 
变量
String
false
N


参数的名字。

scope
范围
String
false
N

page
var参数的作用范围。

cahrEncoding
字符编码
String
true
Y


输入资源的字符编码。

varReader
资源 阅读器
String
false
N


  这个参数的类型是Reader,用于读取资源。



说明
<c:import>中必须要有 url 属性,它是用来设定被包含网页的地址。它可以为绝对地址或是相对地址.
<c:import>也支持FTP协议,假设现在有一个 FTP站台,地址为 ftp.javaworld.com.tw,它里面有一个文件data.txt,那么可以写成如下方式将其内容显示出来:
<c:import url="ftp://ftp.cse.yzu.edu.tw/data.txt" />
另外,可以在<c:import>的本体内容中使用<c:param>,它的功用主要是:可以将参数传递给被包含的文件,它有两个属性name和value.如:
<c:import url="http://java.sun.com" >
<c:param name="test" value="1234" />
</c:import>
这样的做法等于是包含一个文件,并且所指定的网址会变成如下:
http://java.sun.com?test=1234

实例 :
----------------------------------------------------------------------------------------------------------------------------------------
Example1
<c:catch var="exception">
  <c:import url="ftp://ftp.example.com/package/README"/>
</c:catch>
<c:if test="${not empty exception}">
  Sorry, the remote content is not currently available.
</c:if>
<c:import> 操作用来包含通过 FTP 协议访问的文档内容。此外,还使用了 <c:catch> 操作,以便在本地处理 FTP 文件传送期间可能发生的任何错误。错误处理是这样实现的:使用 <c:catch> 的 var 属性为异常指定一个限定了作用域的变量,然后使用 <c:if> 检查其值。如果产生了异常,那么就会对那个限定了作用域的变量进行赋值:如清单 18 中的 EL 表达式所显示的那样,该变量的值将 不会为空。由于 FTP 文档的检索将会失败,因此会显示有关这种情况的错误消息。<c:import> 操作的最后两个(可选的)属性是 var 和 scope 。 var 属性会导致从指定 URL 获取的内容(作为 String 值)被存储在一个限定了作用域的变量中,而不是包含在当前 JSP 页面中。 scope 属性控制该变量的作用域,缺省情况下是页面作用域。如同我们在今后的文章中将要看到的那样,JSTL xml 库中的标记利用了 <c:import> 这种能力,即将整个文档存储在一个限定了作用域的变量中。

还要注意的是,可以使用(可选的)嵌套的 <c:param> 标记来为正在导入的 URL 指定请求参数。与在 <c:url> 中嵌套 <c:param> 标记一样,必要时也要对参数名称和参数值进行 URL 编码。
----------------------------------------------------------------------------------------------------------------------------------------
Example2
<c:import url="/MyHtml.html" var="thisPage" /> 
<c:import url="/MyHtml.html" context=”/sample2” var="thisPage"/> 
<c:import url="www.sample.com/MyHtml.html" var="thisPage"/> 
该示例演示了三种不同的导入方法,第一种是在同一 Context 下的导入,第二种是在不同的 Context 下导入,第三种是导入任意一个 URL 。
分享到:
评论

相关推荐

    Struts2标签使用及API文档

    `struts2标签用法.doc`和`标签详解`文件可能包含更深入的标签用法和实例,例如如何使用`s:form`创建表单,如何利用`s:action`执行Action,以及如何使用`s:debug`标签进行调试等。 5. **Struts2标签的高级用法** -...

    jsf标签使用文档

    #### 一、JSF概述与标签使用 JavaServer Faces(简称JSF)是一种基于Java EE的标准技术,它主要用于构建企业级Web应用。JSF提供了丰富的功能,包括表单处理、验证、国际化等,并通过一套强大的组件模型支持网页组件...

    jsp标签用法.rar

    理解并熟练使用JSP标签能够极大地提高开发效率,使代码更加清晰和模块化。通过合理运用JSTL、自定义标签和JSP动作标签,可以创建出易于维护和扩展的JSP应用。在实际开发中,应根据需求选择合适的标签类型,以实现...

    phpcms万能标签用法详解

    【phpcms万能标签用法详解】 在PHP开发领域,phpcms是一款广泛应用的内容管理系统,以其强大的功能和灵活性受到众多开发者的青睐。其中,phpcms的“万能标签”是其核心特性之一,允许开发者轻松地从数据库中获取并...

    ibatis动态SQL标签用法

    iBatis动态SQL标签用法 iBatis是Java持久层框架,提供了动态SQL标签来实现动态查询。动态SQL标签可以根据不同的条件生成不同的SQL语句,从而提高查询效率和灵活性。 动态SQL片段 iBatis提供了动态SQL片段的功能,...

    JEECMS3.0 标签使用

    ### JEECMS3.0 标签使用详解 #### 第一章 INCLUDE标签 **1.1 功能简介** 在Web开发中,为了提高...对于初学者而言,建议从基础的标签开始学习,并逐渐深入掌握更复杂的标签用法,以便更好地应对实际项目中的需求。

    struts2标签使用方法

    Struts2 标签使用方法 Struts2 标签库提供了主题、模板支持,极大地简化了视图页面的编写,而且,Struts2 的主题、模板都提供了很好的扩展性。Struts2 允许在页面中使用自定义组件,这完全能满足项目中页面显示复杂...

    JSTL中if标签使用方法

    ### JSTL中if标签使用方法详解 JSTL(JavaServer Pages Standard Tag Library)是为简化JSP页面开发而设计的一组标准标签库。它提供了处理数据、条件逻辑等功能的强大工具,使得开发者无需编写复杂的Java代码即可...

    HtmlMate标签使用详解中文WORD版

    资源名称:Html Mate 标签 使用详解 中文WORD版本文档主要讲述的是Html Mate 标签使用详解;meta是html语言head区的一个辅助性标签。meta标签共有两个属性,它们分别是http-equiv属性和name属性,不同的属性又有不同...

    HTML 5和 HTML 4的区别点及标签用法

    ### HTML 5与HTML 4的区别点及标签用法详解 HTML 5作为新一代的超文本标记语言标准,相比其前代HTML 4,在语法、功能以及对多媒体的支持上进行了大幅改进,旨在提升网页的交互性和用户体验。以下将详细介绍HTML 5与...

    struts2 标签使用

    ### Struts2 `&lt;s:if&gt;` 标签使用详解 #### 概述 Struts2 是一款基于 Java 的企业级 Web 应用框架,它利用了 MVC(Model-View-Controller)架构模式来帮助开发者构建可扩展、易于维护的 Web 应用程序。在 Struts2 中...

    html标签大全标签用法详解

    它详尽地介绍了每个标签的用法、属性及注意事项。通过实践和查阅资料,开发者可以熟练掌握HTML,从而创建出功能丰富、用户体验优秀的网站。 总结,HTML标签是构建网页的基础,理解和熟练运用各种标签能有效提升网站...

    struts文件上传例子及页面基本标签用法

    在这个例子中,我们将探讨如何在Struts中实现文件上传,并了解一些基本的页面标签用法。 首先,文件上传在Struts中通常涉及到两个主要部分:前端HTML表单和后端Action类。在前端,我们需要一个`&lt;input type="file"&gt;...

    jeecms2012标签使用教程

    在“jeecms2012标签使用教程”中,很可能会详细讲解每个标签的用法、参数配置以及实例演示,帮助初学者快速上手。对于已经熟悉Jeecms的开发者来说,这份教程也是解决实际问题、优化代码的好参考。

    网页优化meta标签使用方法及规则中文WORD版

    资源名称:网页优化meta标签使用方法及规则 中文WORD版   本文档主要讲述的是网页优化meta标签使用方法及规则;meta是html语言head中的一个辅助标签,meta标签由http-equlv属性和name属性组成,属性不同...

    DedeCMS标签用法详解[归纳].pdf

    在软件开发领域,DedeCMS因其简单实用的模板机制而受到欢迎,尤其对于初学者和美工人员,通过学习其标签用法,可以方便地将设计与编程相结合,创建出具有特色的网站。 DedeCMS模板标签是系统中的核心部分,它们负责...

    HTML的标签使用手册

    这个“HTML的标签使用手册”很显然是为了帮助开发者理解和掌握各种HTML标签的用法,尤其聚焦于在软件开发和页面设计中常用的部分。 1. **HTML基本结构**:HTML文档通常以`&lt;!DOCTYPE&gt;`声明开始,指定文档类型,接着...

    Struts2源码和标签使用和配置

    每个标签都有其特定的属性和用法,理解并熟练使用这些标签可以提高开发效率。 5. **EXT3.0**:EXT3.0可能是EXT JS的一个版本,它是一个强大的JavaScript库,用于构建富客户端应用。EXT JS提供了组件化、数据绑定、...

    易语言源码标签使用.rar

    "易语言源码标签使用"是一个关于如何在易语言编程环境中使用标签(Label)的教程资源。标签在编程中通常用于显示静态文本,比如程序中的提示信息、标题或者状态描述。 在易语言中,标签控件是界面设计的重要组成...

    struts2 标签使用帮助

    4. **标签的属性和用法** 每个标签都有许多可配置的属性,例如`value`用于指定默认值,`name`用于绑定Action属性,`label`用于显示标签的描述文字,`cssClass`和`cssStyle`用于设置样式等。正确理解和使用这些属性...

Global site tag (gtag.js) - Google Analytics