<body>
<%
request.setAttribute("name", "lisi123");
request.setAttribute("ttt", new ArrayList());
request.setAttribute("template", "<h1>lisi123</h1>");
%>
<!--
value:要显示的值
escapeXml:是否转译html标签 true|false
default:默认值 当value的值为null的时候 显示 默认值也可以写在标签体之间 default 和标签体之间的内容不能同时存在

注意 : 最常用的方式是 el表达式

-->
<c:out value="${ttt }" escapeXml="false">123</c:out><br>
${template }

${empty ttt }
<!--
在el表达式中 + 表示加和的意思

-->
${"1"+"2" }
<%-- ${"a"+"b" } --%>
</body>

testset.jsp:

<body>

<%!

public static class Users{

private String name;

public String getName(){
return this.name;
}

public void setName(String name){
this.name = name;
}
}

%>
<!--
scope:如果不指定 则默认放到 page作用域中 给定的作用域没有scope结尾

value:存放的值

var:存放的变量

target:要更改的那一个对象

property:要更改的那一个对象中的那一个属性

常用方式
value+var+scope
value+target+property
-->

<%
Users u = new Users();
u.setName("zhangsan");
request.setAttribute("user", u);
%>
<crazy:set scope="request" value="testset123" var="testset"></crazy:set>
<crazy:set scope="page" value="testset123456" var="testset"></crazy:set>
${requestScope.testset }
<hr>
${user.name }

<crazy:set property="name" value="lisi" target="${user }"></crazy:set>
${user.name }

<hr>

<!--
如果 不指定作用域 会将所有作用域中对应名称的值 一除掉

-->
<crazy:remove var="testset" scope="page"/>
${testset }
</body>

testif.jsp:

<body>
<c:set value="11" var="num" scope="request"></c:set>
<c:if test="${param.num>10 }" var="flag" scope="page">
<h1 style="color:red">num大于10</h1>
</c:if>
<c:if test="${!flag}">
<h1 style="color:green">num不大于10</h1>
</c:if>

<hr>

<!--
if(){

}else if(){

}else{

}

else{

}if(){

}else{

}else[

}

-->
<c:choose>
<c:when test="${param.num>10 && param.num<20 }"><h1 style="color:red">10 &lt; num &lt; 20</h1></c:when>
<c:when test="${param.num>20 && param.num<50 }"><h1 style="color:red">20 &lt; num &lt; 50</h1></c:when>
<c:when test="${param.num<10 }"><h1 style="color:red">num &lt; 10</h1></c:when>
<c:otherwise><h1 style="color:red">num &gt; 50</h1></c:otherwise>
</c:choose>
</body>

testforeach.jsp:

<body>
<%
List<String> list = new ArrayList<String>();
for(int i=0;i<20;i++){
list.add("list"+i);
}
request.setAttribute("list", list);
%>
<!--
forEach

items:待循环的 集合
var:循环的时候 每次的变量
step:步进或是 间隔
begin:从哪一个下标元素开始
end:在哪一个下标元素结束

-->

<c:forEach items="${list }" var="l" step="2" begin="0" end="10" varStatus="s">
<span>${l }</span>|:|<span>${s.current }|${s.index }|${s.count }|${s.first }|${s.last}</span><br>
</c:forEach>
</body>

JSTL的基本使用的更多相关文章

  1. JSP 标准标签库(JSTL)

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

  2. JSTL标签 参考手册

    前言 ========================================================================= JSTL标签库,是日常开发经常使用的,也是众多 ...

  3. JavaWeb_day08_EL JSTL

    本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! day08 EL JSTL EL表达式 语法:${} ...

  4. java web学习总结(三十) -------------------JSTL表达式

    一.JSTL标签库介绍 JSTL标签库的使用是为弥补html标签的不足,规范自定义标签的使用而诞生的.使用JSLT标签的目的就是不希望在jsp页面中出现java逻辑代码 二.JSTL标签库的分类 核心 ...

  5. [Java] JSP笔记 - EL、JSTL 常用标签

    一. 什么是 EL 语言 表达式语言(EL)是 JSP 2.0 引入的一种计算和输出 Java 对象的简单语言. 二.EL 语言的作用 为了使JSP写起来更加简单.表达式语言的灵感来自于 ECMASc ...

  6. JSTL 操作符

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

  7. JSP页面JSTL提供的函数标签EL表达式操作字符串的方法

    首先在jsp页面导入标签<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions&quo ...

  8. JSTL标签库

    JSP页面作为内嵌java的Html简化了Servlet在控制页面显示的语法,但JSP脚本中的表达式功能不够强大,语法也稍显繁杂,EL(Expression Language)表达式语言的出现能够大大 ...

  9. 重温JSP学习笔记--与日期数字格式化有关的jstl标签库

    上一篇笔记写的主要是JSTL的core标签库,如果想对一些数字或者日期做一些操作或者在网页上显示指定格式的数字或日期,jstl还提供了另一个fmt标签库,这里简单介绍一下: 第一步,导入标签库: &l ...

  10. 重温JSP学习笔记--JSTL标签库

    以前写jsp的时候对jstl标签库是有些抵触的,因为我觉得嵌入java代码的方式几乎无往不利,没有必要使用标签库,不过这次复习还是好好地学习了一下,发现这个还是很有用处的,用得好能省不少事,JSTL是 ...

随机推荐

  1. js使用post 方式打开新窗口,隐藏Url参数

    要想在地址栏隐藏url传递的参数,不能直接隐藏,但有几下几个变通的方法. 使用类似Base64编码,将URL参数进行简单加密. 使用框架页; 使用POST方式传递数据; 使用Cookie传递数据; 下 ...

  2. 流程设计器jQuery + svg/vml(Demo4 - 画连线)

    流程结点可以添加了之后,接下来到画结点与结点之间的连线,效果图如下 很眼馋visio的连线可以折来折去,这里实现的连线比较简单. 首先是把连线的类型分为Z(折线).N(折线)及I(直线)3种类型,然后 ...

  3. python原生的日志模块

    Python中有个logging模块可以完成相关信息的记录,在debug时用它往往事半功倍 1. 日志级别 日志一共分成5个等级,从低到高分别是: DEBUG INFO WARNING ERROR C ...

  4. Winform开发之SqlCommand常用属性和方法

    SqlCommand类表示要对 SQL Server 数据库执行的一个 Transact-SQL 语句或存储过程,有若干个属性和若干个方法,具体的各类方法使用可以从msdn上找到. 这里介绍几个常用东 ...

  5. winform messagebox 统一

    vb.net 里面有两种messagebox,一种是vb语言提供的msgbox,另一种是.net framework 提供的messagebox.在此统一使用messagebox. Warning,提 ...

  6. I.MX6 Manufacturing Tool V2 (MFGTool2) ucl2.xml hacking

    <!-- * Copyright (C) 2010-2013, Freescale Semiconductor, Inc. All Rights Reserved. * The CFG elem ...

  7. Scss开发临时学习过程||webpack、npm、gulp配置

    SCSS语法: 假设变量申明带有!default,那么如果在此申明之前没有这个变量的申明,则用这个值,反之如果之前有申明,则用申明的值. ‘...’传递多个参数: @mixin box-shadow( ...

  8. CF1082E:E.increasing Frequency(贪心&最大连续和)

    You are given array a a of length n n . You can choose one segment [l,r] [l,r] (1≤l≤r≤n 1≤l≤r≤n ) an ...

  9. BZOJ3436: 小K的农场(差分约束裸题&DFS优化判环)

    3436: 小K的农场 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 2111  Solved: 986[Submit][Status][Discus ...

  10. java模板导出PDF

    本次完善综合特点: 一对一,点对点的给对应的地方写值,比如模板里面放了个name标识,在程序里把“张三”赋给name,那么输出的pdf里面name的地方就变成了张三,准确方便快捷 支持中文,可以使用自 ...