1 . c:out  -- Like <%= ... >, but for expressions. =out.println(String)
<c:out value="hello world!" default="" escapeXml=""></c:out>
attribute description
value Expression to be evaluated.
required:true
rtexprvalue:true
default Default value if the resulting value is null.
required:false
rtexprvalue:true
escapeXml  Determines whether characters <,>,&,'," in the resulting string should be converted to their corresponding character entity codes. Default value is true.(是否按纯文本显示value的值,默认true,此时不能识别HTML标签;设为false时可以识别HTML标签)
required:false
rtexprvalue:true
等价于<% out.println("hello world!");%>
用于输出内容,如何输入域对象中的内容呢?(request,session,application,pageContext)
     <%
          request.setAttribute("a", "你好1"); 
          session.setAttribute("a", "你好2"); 
          application.setAttribute("a", "你好3"); 
          pageContext.setAttribute("a", "你好4"); 
      %>
    <c:out value="${a}" default="null value." escapeXml=""></c:out>
${a} 域对象中存在属性名相同时,搜索的顺序(优先级):pageContext > request > session > application,顾输出:你好4
获取对象(User有两个属性:uname,pwd):
      <%
          User user = new User();
          user.setUname("zfq");
          user.setPwd("123");
          session.setAttribute("u", user);
       %>
    <!-- User的uanme和pwd必须有get方法 -->
    <c:out value="${u.uname}" default="null value." escapeXml="false"></c:out>
    <c:out value="${u.pwd}" default="null value." escapeXml="false"></c:out>
    ${u.uname }  ${u.pwd }    <!-- el表达式,可在里面做运算 -->
 
2.c:set --Sets the result of an expression evaluation in a 'scope'. =setAttribute(String,Object)
<c:set property="" value="中国" scope="request" target="" var="china"></c:set>
<c:set property="" value="中国1" scope="session" target="" var="china"></c:set>
<c:out value="${china }"></c:out>
输出:中国
c:set执行的内容多在控制器中就完成了,所以该标签用的时候不多
attribute description
var Name of the exported scoped variable to hold the value specified in the action. The type of the scoped variable is whatever type the value expression evaluates to.
required:false
rtexprvalue:false
value Expression to be evaluated.
required:false
rtexprvalue:true
target Target object whose property will be set. Must evaluate to a JavaBeans object with setter property property, or to a java.util.Map object.
required:false
rtexprvalue:true
property Name of the property to be set in the
target object.
required:false
rtexprvalue:true
scope
Scope for var.(request/session)
不能是application和pageContext
(指定域对象,默认)
required:false
rtexprvalue:false
 
3.c:remove  -- Removes a scoped variable (from a particular scope, if specified).=removeAttribute(String,Object)
<%request.setAttribute("attr", "Hello"); %>
<c:out value="${attr }"></c:out><br>
<c:remove var="attr" scope="request"/>
<c:out value="${attr }" default="null value"></c:out>
输出:Hello
      null value
attribute description
var Name of the scoped variable to be
removed.
required:true
rtexprvalue:false
scope Scope for var.未指明则删除所有域对象的内容
required:false
rtexprvalue:false
 
4. c:catch  -- Catches any Throwable that occurs in its body and optionally exposes it.
<c:catch var="myException">
        <%  
           int i = 8/0; 
        %>
    </c:catch>
    <c:out value="${myException.message }"></c:out>
输出:/ by zero
attribute description
var Name of the exported scoped variable for the exception thrown from a nested
action. The type of the scoped variable
is the type of the exception thrown.
required:false
rtexprvalue:false
 
5. c:if  -- Simple conditional tag, which evalutes its body if the supplied condition is true and optionally exposes a Boolean scripting variable representing the evaluation of this condition
       <%
          request.setAttribute("attr", "zfq");
          request.setAttribute("num", "25");
       %>
       <c:if test="${attr=='zfq'}" var="cif" scope="session">
           <c:out value="ok"></c:out>
       </c:if>
       <br>
       <c:if test="${cif }">
           <c:out value="not ok"></c:out>
       </c:if>
       <br>
       <c:if test="${num > 12 }">
           <c:out value="num > 12"></c:out>
       </c:if>
输出:ok
      not ok
      num > 12
attribute description
test The test condition that determines whether or not the body content
should be processed.
required:true
rtexprvalue:true
type:boolean
var Name of the exported scoped variable for the resulting value of the test condition. The type of the scoped variable is Boolean.
(把判断结果(bool值)放入域对象)
required:false
rtexprvalue:false
scope Scope for var.
required:false
rtexprvalue:false
 
6. c:choose -- Simple conditional tag that establishes a context for mutually exclusive conditional operations, marked by <when> and <otherwise>
 
attribute description
null null
 
7. c:when -- Subtag of <choose> that includes its body if its condition evalutes to 'true'
 
attribute description
test The test condition that determines
whether or not the body content should be processed.
required:true
rtexprvalue:true
type:boolean
 
8. c:otherwise -- Subtag of <choose> that follows <when> tags and runs only if all of the prior conditions evaluated to 'false'
 
attribute description
null null
 
6、7、8例子:
     <%
        Rat rat = new Rat();
        rat.setName("Jerry");
        rat.setAge(21);
        request.setAttribute("rat", rat);
     %>
      <c:choose>
     <c:when test="${rat.age <= 1 }"> <font color="red">老鼠太小不能吃!</font> </c:when>
     <c:when test="${rat.age > 1 and rat.age <= 4}"> <font color="green">老鼠正在适吃年龄!</font> </c:when>
     <c:when test="${rat.age > 4 and rat.age <= 20 }"> <font color="red">老鼠太老不好吃!</font> </c:when>
     <c:otherwise><font color="red">老鼠已成精,敢吃吗?</font></c:otherwise>

</c:choose>

输出:老鼠已成精,敢吃吗?
 
9. c:foreach -- The basic iteration tag, accepting many different collection types and supporting subsetting and other functionality
    <%
        ArrayList<Rat> rats = new ArrayList<Rat>();
        for(int i = 0;i < 5;i++){
            Rat rat = new Rat();
            rat.setAge(i+1);
            rat.setName("rat"+(i+1));
            rats.add(rat);
        }
        request.setAttribute("attr_rats", rats);
     %>
    <c:forEach begin="0" end="4" items="${attr_rats}" step="1" var="rat" varStatus="">
        <c:out value="${rat.name }    ${rat.age }"></c:out><br>
    </c:forEach>
输出:rat1 1
      rat2 2
      rat3 3
      rat4 4
      rat5 5
attribute description
items Collection of items to iterate over.
required:false
rtexprvalue:true
type:java.lang.Object
deferred-value:java.lang.Object
begin If items specified:
Iteration begins at the item located at
the specified index. First item of the
collection has index 0.
If items not specified:
Iteration begins with index set at the
value specified.
required:false
rtexprvalue:true
type:int
end If items specified:
Iteration ends at the item located at the
specified index (inclusive).
If items not specified:
Iteration ends when index reaches the value
specified.
required:false
rtexprvalue:true
type:int
step Iteration will only process every step items
of the collection, starting with the first one.
required:false
rtexprvalue:true
type:int
var Name of the exported scoped variable for the
current item of the iteration. This scoped
variable has nested visibility. Its type
depends on the object of the underlying
collection.
required:false
rtexprvalue:false
varStatus Name of the exported scoped variable for the
status of the iteration. Object exported is of type
javax.servlet.jsp.jstl.core.LoopTagStatus. This scoped
variable has nested visibility.
required:false
rtexprvalue:false
 
10. c:forTokens -- Iterates over tokens, separated by the supplied delimeters(分界符)
       <%
          String s = "a,b,c";
          request.setAttribute("str", s);
       %>
      
    <c:forTokens items="${str }" delims="," var="c">
        ${c}
    </c:forTokens>
输出:a b c
attribute description
items String of tokens to iterate over.
required:true
rtexprvalue:true
type:java.lang.String
deferred-value:java.lang.String
delims The set of delimiters (the characters that
separate the tokens in the string).
required:true
rtexprvalue:true
type:java.lang.String
begin Iteration begins at the token located at the
specified index. First token has index 0.
required:false
rtexprvalue:true
type:int
end Iteration ends at the token located at the
specified index (inclusive).
required:false
rtexprvalue:true
type:int
step Iteration will only process every step tokens
of the string, starting with the first one.
required:false
rtexprvalue:true
type:int
var Name of the exported scoped variable for the
current item of the iteration. This scoped
variable has nested visibility.
required:false
rtexprvalue:false
varStatus Name of the exported scoped variable for the
status of the iteration. Object exported is
of type javax.servlet.jsp.jstl.core.LoopTag
Status. This scoped variable has nested
visibility.
required:false
rtexprvalue:false
 
 
 
 
 
11. c:redirect -- Redirects to a new URL.
<c:redirect context="" url="http://www.baidu.com"></c:redirect>
跳转到百度首页
attribute description
url The URL of the resource to redirect to.
required:false
rtexprvalue:true
context Name of the context when redirecting to a relative URL
resource that belongs to a foreign context.
required:false
rtexprvalue:true
 
12. c:import -- Retrieves an absolute or relative URL and exposes its contents to either the page, a String in 'var', or a Reader in 'varReader'.
        <c:import url="../a.jsp">
            <c:param name="uname" value="zfq"></c:param>
        </c:import>
      JSP页面中访问参数:       
        <body>
            A jsp page.<br>
            ${param.uname}

</body>

attribute description
url The URL of the resource to import.
required:true
rtexprvalue:true
var Name of the exported scoped variable for the
resource's content. The type of the scoped
variable is String.
required:false
rtexprvalue:false
scope Scope for var.
required:false
rtexprvalue:false
varReader Name of the exported scoped variable for the
resource's content. The type of the scoped
variable is Reader.
required:false
rtexprvalue:false
context Name of the context when accessing a relative
URL resource that belongs to a foreign
context.
required:false
rtexprvalue:true
charEncoding Character encoding of the content at the input
resource.
required:false
rtexprvalue:true
 
13. c:url -- Creates a URL with optional query parameters.
 
attribute description
var Name of the exported scoped variable for the
processed url. The type of the scoped variable is
String.
required:false
rtexprvalue:false
scope Scope for var.
required:false
rtexprvalue:false
value URL to be processed.
required:false
rtexprvalue:true
context Name of the context when specifying a relative URL
resource that belongs to a foreign context.
required:false
rtexprvalue:true
 
14. c:param -- Adds a parameter to a containing 'import' tag's URL.
 
attribute description
name Name of the query string parameter.
required:true
rtexprvalue:true
value Value of the parameter.
required:false
rtexprvalue:true
 
注解:
(1)rtexprvalue的全称是 Run-time Expression Value, 它用于表示是否能够利用JSP表达式

c 标签的更多相关文章

  1. a标签点击跳转失效--IE6、7的奇葩bug

    一般运用a标签包含img去实现点击图片跳转的功能,这是前端经常要用到的东西. 今天遇到个神奇的bug:如果在img上再包裹一层div,而且div设置了width和height,则图片区域点击时,无任何 ...

  2. IE6、7下html标签间存在空白符,导致渲染后占用多余空白位置的原因及解决方法

    直接上图:原因:该div包含的内容是靠后台进行print操作,输出的.如果没有输出任何内容,浏览器会默认给该空白区域添加空白符.在IE6.7下,浏览器解析渲染时,会认为空白符也是占位置的,默认其具有字 ...

  3. 百度MIP页规范详解 —— canonical标签

    百度MIP的规范要求必须添加强制性标签canonical,不然MIP校验工具会报错: 强制性标签<link rel="/^(canonical)$/"> 缺失或错误 这 ...

  4. 【CSS进阶】伪元素的妙用--单标签之美

    最近在研读 <CSS SECRET>(CSS揭秘)这本大作,对 CSS 有了更深层次的理解,折腾了下面这个项目: CSS3奇思妙想 -- Demo (请用 Chrome 浏览器打开,非常值 ...

  5. TODO:Laravel 使用blade标签布局页面

    TODO:Laravel 使用blade标签布局页面 本文主要介绍Laravel的标签使用,统一布局页面.主要用到到标签有@yield,@ stack,@extends,@section,@stop, ...

  6. 最新 去掉 Chrome 新标签页的8个缩略图

    chrome的新标签页的8个缩略图实在让人不爽,网上找了一些去掉这个略缩图的方法,其中很多已经失效.不过其中一个插件虽然按照原来的方法已经不能用了,但是稍微变通一下仍然是可以用的(本方法于2017.1 ...

  7. css-父标签中的子标签默认位置

    <!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>& ...

  8. xpath提取多个标签下的text

    title: xpath提取多个标签下的text author: 青南 date: 2015-01-17 16:01:07 categories: [Python] tags: [xpath,Pyth ...

  9. 多个Img标签之间的间隙处理方法

    1.多个标签写在一行 <img src="/i/eg_tulip.jpg" alt="郁金香" height="100px"/> ...

  10. html5标签canvas函数drawImage使用方法

    html5中标签canvas,函数drawImage(): 使用drawImage()方法绘制图像.绘图环境提供了该方法的三个不同版本.参数传递三种形式: drawImage(image,x,y):在 ...

随机推荐

  1. javascript进阶-原型prototype

    一.javascript原型认识 很多编程语言都有类的概念,我们可以拿原型和类进行比较,看看它们之间的区别以及相同点在哪里. 1.类:类是一个具体事物的抽象所以类是一个抽象的东西,在面向对象中类可以用 ...

  2. 【转载】MQTT学习笔记——MQTT协议体验 Mosquitto安装和使用

    http://blog.csdn.net/xukai871105/article/details/39252653 0 前言     MQTT是IBM开发的一个即时通讯协议.MQTT是面向M2M和物联 ...

  3. part 4 AngularJS ng src directive

  4. iOS 中对各种视图的截屏以及分享

    1.一个第三方的工具,主要是对表视图.滚动视图.视图的扩展,用法也很简单 image = [tableview screenshot]; 2.然后将截的图片分享出去,在分享的时候,因为多个地方用到了截 ...

  5. 兄台息怒,关于arguments,您的想法和大神是一样一样的----闲聊JS中的apply和call

    JavaScript提供了apply和call两种调用方式来确定函数体中this的指向,表现出来的特征就是:对象可以'借用'其他对象的方法.之前的几篇博客回顾了一些Web控件的一些开发方法,我们聊了如 ...

  6. <img>元素底部为何有空白?

    原因: 图片文字等inline元素默认是和父级元素的baseline对齐的,即:vertical-align 的默认值是 baseline:而baseline又和父级底边bottom有一定距离: im ...

  7. 配置Hibernate二级缓存步骤

    配置Hibernate二级缓存步骤: 加入二级缓存的jar包及配置文件 jar包位置:hibernate-release-4.1.8.Final\lib\optional\ehcache下所有jar包 ...

  8. ARC小知识

    ARC是iOS 5推出的新功能,全称叫 ARC(Automatic Reference Counting).简单地说,就是代码中自动加入了retain/release,原先需要手动添加的用来处理内存管 ...

  9. yaf运行错误:Class 'Yaf_Application' not found

    提示:致命错误 Yaf_Application 基类没有加载进去 一检查:phpinfo() 里yaf 扩展有没有安装上 扩展也安装进去了 这时在分布式配置文件的重写 也是正确 这时百思不得其解,没办 ...

  10. nginx安装总结

    对于nginx作为负载均衡服务器时的安装需要安装rewrite模块需要的pcre()库,gzip模块需要zlib库,ssl模块需要openssl库,对此依赖安装有很多种处理方式,以下简单总结: 通过源 ...