`

JSP C标签

阅读更多

从JSP 1.1规范开始,JSP就支持在JSP中使用自定义标签了,自定义标签的广泛使用造成了程序员重复定义,这样就促成了JSTL(JavaServer Pages Standard Tag Library)的诞生。
 
JSTL简介

JSTL是一个不断完善的开放源代码的JSP标签库,是由apache的jakarta小组来维护的。JSTL只能运行在支持JSP1.2和Servlet2.3规范的容器上,如tomcat 4.x。但是在即将推出的JSP 2.0中是作为标准支持的。
JSTL目前的最新版本为1.02,最终发布版为1.0。JSTL包含两个部分:标签库和EL(Expression Language表达式语言)语言。标签库目前支持四种标签:
标签 URI 前缀 示例
Core http://java.sun.com/jstl/core c <c:tagname ...>
XML processing http://java.sun.com/jstl/xml x <x:tagname ...>
I18N capable formatting http://java.sun.com/jstl/fmt fmt <fmt:tagname ...>
Database access (SQL) http://java.sun.com/jstl/sql sql <sql:tagname ...>


Core支持JSP中的一些基本的操作;
XML processing支持XML文档的处理;
I18N capable formatting支持对JSP页面的国际化;
Database access (SQL)支持JSP对数据库的操作。
让我先给你介绍c标签吧.
 

1. <c:out>

:Core(核心库)

 

URI : http://java.sun.com/jsp/jstl/core

 

前缀 :

 

描述 :<c:out> 标签是一个最常用的标签,用于在   JSP   中显示数据。 它的作用是用来替代通过 JSP   置对象 out 或者 <%=%> 标签来输出对象的值。

 

语法

没有Body时的语法 

<c:out value=”value” [escapeXml=”{true|false}”] [default=”defaultValue”]/> 

有Body时的语法 

<c:out value=”value” [escapeXml=”{true|false}”]> 

这里是Body部分 

</c:out>  

 

属性 :

属性名

描述

类型

是否接受动态值

是否支持 EL

是否

必须

默认值

说明

value 

需要显示的值

Object 

Y

Y

Y

用来定义需要求解的表达式。

escapeXml

是否转换特殊字符

boolean

Y

Y

N

true

用于指定在使用 <c:out> 标记输出诸如“ < ”、“ > ”、“ ”、“ ”和“ & ”之类的字符(在  HTML   XML  中具有特殊意义)时是否应该进行转义。如果将  escapeXml  设置为 true ,则会自动的进行编码处理。

default

缺省值

Object

Y

Y

N

当求解后的表达式为 null 或者 String 为空时将打印这个缺省值。

 

Null和错误说明

假若value为null,会显示default的值;假若没有设定default的值,则会显示一个空的字符串。

 

实例 :

------------------------------------------------------------------------------------------------------------------------------------------

Example1

<c:out value="${sessionScope.anyValue}" default="no value" escapeXml="false"/>

该示例将从Session查找名为“anyValue”的参数,并显示在页面,若没有找到则显示“no value”。

------------------------------------------------------------------------------------------------------------------------------------------

Example2

您的用户名是: <c:out value=”${user.username}” default=”guest”/> 

 

显示用户的用户名,如为空则显示guest

<c:out value="${sessionScope.username}"/> 

 

指定从session中获取username的值显示;

<c:out value="${username}" /> 

 

显示username的值,默认是从request(page)中取,如果request中没有名为username的对象则从session中取,session中没有则从application(servletContext)中取,如果没有取到任何值则不显示

------------------------------------------------------------------------------------------------------------------------------------------

 

2.  <c:set>

:Core(核心库)

 

URI : http://java.sun.com/jsp/jstl/core

 

前缀 :

 

描述 : <c:set>标签用于为变量或JavaBean中的变量属性赋值的工作。这个标签用于在某个范围(page、request、session、application等)中使用某个名字设定特定的值,或者设定某个已经存在的javabean对象的属性。他类似于<%request.setAttrbute("name","value");%>  

 

语法

语法1: 没有body

将value的值存储至范围为scope的varName变量之中

<c:set value="value" var="varName" [scope="{page|request|session|application}"]/>

语法2: 有body

将body内容存储至范围为scope的varName变量之中

<c:set value="value" [scope="{page|request|session|application}"]>

 body.....

</c:set>

语法3: 将value的值存储至target对象属性中

<c:set value="value" target="target" property="propertyNmae"/>

语法4: 将body内容的数据存储至target对象属性中

<c:set target="target" property="propertyNmae">

 body....

</c:set>

Ø  Null 和 错误处理:

语法3和语法4会产生异常错误,有以下两种情况:

 .target 为null

 .target 不是java.util.Map或JavaBean对象

假若value为null时:将由存储变量改为移除变量

 .语法1: 由var和scope所定义的变量,将被移除

   .若scope已指定时,则PageContext.removeAttribute(varName,scope);

   .若scope未指定时,则PageContext.removeAttribute(varName);

 .语法3: 

   .假若target为Map时,则Map.remove(property);

   .假若target为JavaBean时,propertye指定的属性为null

注意: var和scope这两个属性不能使用表达式来表示,我们不能写成 scope="${ourScope}"或var="${a}"

 

 

属性 :

属性名

描述

类型

是否接受动态值

是否支持 EL

是否

必须

默认值

说明

value

要被存储的值 

Object

true

Y

 

被计算的表达式

var

变量名

String

false

N

 

被导出的保存了value属性计算结果的范围变量的名称

scope

范围

String

true

N

page

var的JSP范围

target

目标 对象

String

true

Y

 

要设置属性的对象。必须是JavaBean对象或java.util.Map对象

property

指定target对象属性

Object 

true

Y

 

要设置的target对象的属性的名称

 

 

分享到:
评论

相关推荐

    JSP C标签引用

    **JSP C标签引用**是JavaServer Pages(JSP)技术中的一种扩展,它允许开发者使用自定义标签库(Custom Tag Libraries),特别是JSP Standard Tag Library(JSTL)。JSTL是Java社区为了简化JSP开发,提高代码可读性...

    JSTL 标签库 jsp C 标签库

    **JSTL(JavaServer Pages Standard Tag...总之,JSTL和C标签库为JSP开发提供了强大的工具,使得页面更简洁、可读性更强,同时也提升了开发效率和应用的可维护性。掌握JSTL的使用对于任何JSP开发者来说都是至关重要的。

    JSP 标准标签库(c标签库)

    **JSP标准标签库(JSTL)与C标签库详解** JSP(JavaServer Pages)标准标签库(JSTL)是Java EE平台的一部分,它提供了一套标准的标签来处理常见任务,如迭代、条件判断、XML处理等,以简化JSP页面的编写,提高代码...

    JSP使用C标签时必须引入的jar包

    在Java服务器页面(JSP)开发中,C标签库(Core Tag Library)是JSTL(JavaServer Pages Standard Tag Library)的一部分,它提供了一系列便利的标签用于处理页面逻辑,如迭代、条件判断等。要使用C标签库,我们需要...

    JSP使用C标签时必须引入的jar包,jstl.jar和standard.jar,commons-fileupload-1.3.2.jar以及文件上传的jar包

    在Java服务器页面(JSP)开发中,C标签库(Core Tag Library)是JSTL(JavaServer Pages Standard Tag Library)的一部分,它提供了一系列用于处理常见任务的标签,如迭代、条件判断等,使得JSP代码更加简洁和易读。...

    JSP标准标签jar

    **JSP标准标签库(JSTL)详解** 在Java Web开发中,JSP(JavaServer Pages)标准标签库(JSTL)是用于增强JSP页面可读性和可维护性的重要工具。JSP标准标签库是Java社区过程(JCP)的一个成果,它将常见的JSP操作...

    JSP标准标签库

    JSP标准标签库(JSTL)是为Java Server Pages(JSP)提供的一套标准自定义标签集合。JSTL允许开发者使用标签形式编写JSP页面,而不需要书写复杂的Java代码片段。这些标签被组织在不同的功能类别中,可以进行数据输出...

    jsp标准标签标准动作

    - `&lt;c:set&gt;`标签用于在JSP页面中设置变量。例如,我们可以设置一个变量并用它来存储数据: ```jsp &lt;c:set var="name" value="张三"/&gt; ${name} ``` 5. **其他库** - XML库(JSTL XML,`前缀)用于处理XML文档...

    jsp标签用法.rar

    在JavaServer Pages (JSP) 技术中,标签(Tag)是用于增强页面可读性和简化代码的重要组件。它们提供了与HTML标签类似的结构,但允许开发者使用自定义的行为或功能。JSP标签分为三种主要类型:标准标签库(JSTL)、...

    jsp标准标签库

    首先,使用`&lt;c:set&gt;`标签设置了几个变量,存储从`Hello.jsp`传递过来的参数值。然后,`&lt;sql:setDataSource&gt;`定义了一个数据源,指定MySQL数据库的驱动、URL、用户名和密码。接下来,`&lt;sql:query&gt;`执行了一个SQL查询...

    jsp核心标签的使用方法

    在JavaServer Pages (JSP) 技术中,核心标签库是预定义的一组标签,它们为开发者提供了方便的方式来操作页面元素,如控制流程、输出数据、处理表单等。本篇文章将深入探讨JSP核心标签的使用方法,并介绍一些常用的...

    jsp标准标签库(各种标准标签库)

    ### JSP标准标签库(JSTL)详解 #### 6.1 JSTL简介 JSTL(JSP Standard Tag Library),即JSP标准标签库,是由Sun Microsystems提出并由Apache Jakarta组织维护的一种用于简化JSP开发的技术。JSTL提供了一套标准化...

    JSP标准标签库实例

    【JSP标准标签库实例】 JSP标准标签库(JSTL,JspServer Pages Standdard Tag Library)是由Sun Microsystems公司开发的一种用于简化JSP页面开发的组件。它的核心理念是通过提供预定义的标签集合,使得开发者可以...

    Jsp的标签文件

    这行代码告诉JSP引擎,我们可以使用以"c"为前缀的JSTL核心库标签。 总的来说,JSP的标签文件,尤其是JSTL核心库,是JEE开发中提升效率和代码质量的重要工具。通过熟练掌握和应用这些标签,开发者可以创建出更高效、...

    jsp页面java标签库

    在JSP页面中,Java标签库扮演着至关重要的角色,它允许开发者使用预先定义好的标签执行各种操作,例如数据输出、流程控制、迭代处理以及异常处理等。 JSP自带的核心标签库中,包含了许多用于简化Web开发的标签。...

    jsp标准标签库的使用

    JSP标准标签库(JSTL)是JavaServer Pages Standard Tag Library的缩写,它是Java EE标准的一部分,用于简化JSP页面中的代码,提高可读性和维护性。JSTL提供了一系列预定义的标签,这些标签覆盖了常见任务,如控制流...

    jsp+servlet的C标签jar包和使用方法

    C标签库,通常指的是Apache的Catalina标签库,也被称为Tomcat JSP标签库,它提供了一系列的便利标签,简化了JSP页面中的Java代码,使得页面更易于阅读和维护。本篇将详细讲解C标签的jar包以及如何在项目中使用。 ...

    JSP自定义标签 eclipse项目

    在传统的JSP开发中,我们通常使用内置标签,如`&lt;jsp:include&gt;`或`&lt;c:forEach&gt;`,但当需要实现特定业务逻辑或复杂功能时,自定义标签就显得尤为重要。 创建一个**Eclipse项目**来学习和实践JSP自定义标签是一个很好...

Global site tag (gtag.js) - Google Analytics