<jsp:useBean id="personBean" class="com.servlet.PersonInfo"></jsp:useBean>
     <c:out value="&lt显示数据对象(未使用转义字符)&gt" escapeXml="true" default="默认值"></c:out><br/>
     <c:out value="&lt显示数据对象(未使用转义字符)&gt" escapeXml="false" default="默认值"></c:out><br/>
     <c:out value="${null}" escapeXml="false">使用的表达式结果为null,则输出默认值</c:out><br/>
     <c:out value="${initParam.name}" escapeXml="false">使用的表达式结果为null,则输出默认值</c:out><br/>
     <c:out value="${name}" escapeXml="false">使用的表达式结果为null,则输出默认值</c:out><br/>
     ${requestScope.name}<br/><br/>

     <c:set value="张三" var="name1" scope="session"></c:set>
     <c:set var="name2" scope="session">李四</c:set>
     <c:set value="赵五" target="${personBean}" property="name"></c:set>
     <c:set target="${personBean}" property="age">19</c:set>
     <span>从seesion中得到的值:${sessionScope.name1}</span><br/>
     <span>从seesion中得到的值:${sessionScope.name2}</span><br/>
     <span>从Bean中获取对象person的name值:<c:out value="${personBean.name}"></c:out></span><br/>
     <span>从Bean中获取对象person的age值:<c:out value="${personBean.age}"></c:out></span><br/><br/>

     <h2>JSTL: -- forEach标签实例</h2>
     <%
         List<String> ls = new ArrayList<String>();
         ls.add("路飞");
         ls.add("索隆");
         ls.add("香吉士");
         ls.add("乌索普");
         ls.add("娜美");
         ls.add("乔巴");
         ls.add("弗兰奇");
         ls.add("罗宾");
         ls.add("布鲁克");
         request.setAttribute("ls", ls);
     %>
     <c:out value="不指定begin和end的迭代:"></c:out>
     <c:forEach var="list" items="${ls}" >
         <c:out value="${list}"></c:out>
     </c:forEach><br/>
     <c:out value="指定begin和end的迭代(step 指定间隔):"></c:out>
     <c:forEach var="list" items="${ls}" begin="1" end="5" step="2">
         <c:out value="${list}"></c:out>
     </c:forEach><br/>
     <c:out value="输出整个迭代信息:"></c:out>
     <c:forEach var="list" items="${ls}" begin="3" end="4" step="1" varStatus="s">
         <c:out value="${list}"></c:out>的四种属性<br/>
         所在位置,即索引:<c:out value="${s.index}" /><br>
         总共迭代的次数:<c:out value="${s.count}" /><br>
         是否为第一个位置:<c:out value="${s.first}" /><br>
         是否是最后一个位置:<c:out value="${s.last}" /><br>
     </c:forEach><br><br>

1、第1、2两行,关键字escapeXml为设置value中的内容是否需要转义;

2、第3、4、5如果el表达式中的内容为空,则显示页面中的内容;

3、第6行,通过el表达式获取request中的数据,这里要注意,servlet中有两种页面跳转的方法,response.sendRedirect()和 config.getServletContext().getRequestDispatcher("/jstl.jsp").forward(request, response);前者传参数只能通过url的方式,后者可以将参数放在request中;

4、第8、9、12、13行,向sessionScope中设置值,并显示;

5、第10、11、14、15行,向实体类PersonInfo中设置值,并显示;

6、forEach标签实例:

          items:被迭代的集合对象;

          var:存放当前指到的集合对象中的成员。就是声明一个变量,这个变量就是items;

          varStatus:存放当前指到的成员的相关信息。(index:当前指到的成员的索引;count:当前总共指到成员的总数;first:当前指到的成员     是否为第一个成员;last:当前          指到的成员是否为最后一个成员)。

          begin:迭代开始的位置,默认为0。

          end:迭代结束的位置,默认为最后。

          step:每次迭代的间隔数,默认为1。

执行结果为:
    

set 标签的属性: value(Object),要创建的字符串,或要引用的限域对象,或新的属性值;

        var(String),要创建的限域变量,就是声明一个变量的意思;

        scope(String),新建限域对象的范围;

        target(Object),其属性要赋新值的对象,必须时javaBean实例或者是java.util.Map对象;

        property(String),要赋新值的属性名称;

remove 标签的属性:var(String),要删除限域变量的名称;

          scope(String),要删除限域变量的范围;

if 标签的属性:test(boolean),决定是否处理某些现有主要内容的测试条件;

       var(String),引用测试条件值的限域变量名称,var 的类型为boolean;

       scope(String),用var设置的限域变量的范围;

      

          

jstl的一些用法的更多相关文章

  1. JSTL标签的用法详解

    在JSP中写Java代码是一件很恶心的事情,代码量少的话还可以,要是多的话,就蛋疼了,整个页面都是<%  %>所以EL表达式和JSTL就应运而生了,这里我们注重讲解一下JSTL标签的使用: ...

  2. JSP 基础之 JSTL &lt;c:forEach&gt;用法

    在JSP的开发中,迭代是经常要使用到的操作.例如,逐行的显示查询的结果等.在早期的JSP中,通常使用Scriptlets来实现Iterator或者Enumeration对象的迭代输出.现在,通过JST ...

  3. jstl中的用法

    版权声明:本文为博主原创文章,未经博主允许不得转载. 在JSP的开发中,迭代是经常要使用到的操作.例如,逐行的显示查询的结果等.在早期的JSP中,通常使用Scriptlets来实现Iterator或者 ...

  4. JSP 基础之 JSTL &lt;c:if&gt;用法

    <c:if>还有另外两个属性var和scope.当我们执行<c:if>的时候,可以将这次判断后的结果存放到属性var里:scope则是设定var的属性范围.哪些情况才会用到va ...

  5. JSP 基础之 JSTL &lt;c:choose&gt;用法 if else

    <c:choose> <c:when test="${condition1}"> condition1为true </c:when> <c ...

  6. JSTL 操作符

    el表达式的取值默认顺序:     pageScope  requestScope  sessionScope  applicationScope     结构,采用.导航,也称为存取器   ${us ...

  7. JSTL标签(转载)

    JSTL标签是一个实现web功能的定制标签库,包括输出功能,条件判断,循环等,使用JSTL标签,为动态编写WEB应用程序提供了很大的方便性,能很好的和Java语言和HTML进行结合.下面我们看看jst ...

  8. JSP 知识基本

    from:http://blog.csdn.net/caipeichao2/article/details/38589293 more:http://www.2cto.com/kf/web/jsp/4 ...

  9. 一个JavaWeb搭建的开源Blog系统,整合SSM框架

    搬砖有暇,捣鼓了一个简单的Blog系统(项目地址https://github.com/lenve/JavaEETest/tree/master/MyBlog),适合以下人群学习: 1.已经掌握了jsp ...

随机推荐

  1. windows批处理语法

    写批处理文件,除了了解基本语法外,你还需要熟悉常用的windows命令,那就先看看这篇文章:windows常用命令 #重要说明 文件及目录路径:要使用反斜杠'\',不要使用正斜杠'/' 如:del d ...

  2. JS全局函数parseInt和parseFloat

    1.parsetInt parseInt(string ,radix)解析一个字符串,并返回一个十进制的整数:该方法是将字符串转成十进制整数 console.log(parseInt("01 ...

  3. linx目录结构

    linux中的命令一般存放在/bin目录下的: 以下为linux下的基本目录结构和作用: /根目录./boot引导程序,内核等存放的目录./sbin超级用户可以使用的命令的存放目录./bin普通用户可 ...

  4. C++ DLL 获取 MSI Property

    VS2010 创建  C++, Win32 DLL工程C-TEST. Stdafx.h中,在<windows.h>之后 添加引用. #include <msi.h> #incl ...

  5. Swift 中的getting和setter的使用

    以下简单的介绍Swift中的getting和setting的使用方法: Xcode version: 6.1 先附代码: class Test { var num1: Double = 0.0 ini ...

  6. 在Ubuntu Desktop打开终端的2种方式

    共有3中方法: 1.在Ubuntu左上角选择File/Open in Terminal 2.快捷键alt+F2调出Run a Command,输入gnome-terminal 添加右键支持 在终端,输 ...

  7. js实现页面重定位的几种方法

    参考地址:http://www.cnblogs.com/super-d2/archive/2011/10/01/2197004.html js实现页面重定向 在现行的网站应用中URL重定向的应用有很多 ...

  8. Mac下用SSH连接远程Linux或Mac服务器

    1.打开Mac终端 2.切换到root登录 输入命令:sudo -i,然后输入本机密码 p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 14.0px &qu ...

  9. Leetcode Scratching Recorder

    Author: Zhong-Liang Xiang Start from: August 7th, 2017 这个题为连滚带爬的Leetcode填坑记录就这么开始了. 网上看了看, 一堆小伙从2014 ...

  10. JS-词法作用域 作用域链

    ## 词法作用域 概念:所谓的词法作用域,就是代码在编写过程就体现出来的作用范围.代码一旦写好,不用执行, 作用范围就已经确定好了,这个就是所谓的词法作用域. ## 词法作用域的规则: 1,函数允许访 ...