JSTL的基本使用

<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 < num < 20</h1></c:when>
<c:when test="${param.num>20 && param.num<50 }"><h1 style="color:red">20 < num < 50</h1></c:when>
<c:when test="${param.num<10 }"><h1 style="color:red">num < 10</h1></c:when>
<c:otherwise><h1 style="color:red">num > 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的基本使用的更多相关文章
- JSP 标准标签库(JSTL)
JSP 标准标签库(JSTL) JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应用的通用核心功能. JSTL支持通用的.结构化的任务,比如迭代,条件判断,XML文档操作,国际化标签, ...
- JSTL标签 参考手册
前言 ========================================================================= JSTL标签库,是日常开发经常使用的,也是众多 ...
- JavaWeb_day08_EL JSTL
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! day08 EL JSTL EL表达式 语法:${} ...
- java web学习总结(三十) -------------------JSTL表达式
一.JSTL标签库介绍 JSTL标签库的使用是为弥补html标签的不足,规范自定义标签的使用而诞生的.使用JSLT标签的目的就是不希望在jsp页面中出现java逻辑代码 二.JSTL标签库的分类 核心 ...
- [Java] JSP笔记 - EL、JSTL 常用标签
一. 什么是 EL 语言 表达式语言(EL)是 JSP 2.0 引入的一种计算和输出 Java 对象的简单语言. 二.EL 语言的作用 为了使JSP写起来更加简单.表达式语言的灵感来自于 ECMASc ...
- JSTL 操作符
el表达式的取值默认顺序: pageScope requestScope sessionScope applicationScope 结构,采用.导航,也称为存取器 ${us ...
- JSP页面JSTL提供的函数标签EL表达式操作字符串的方法
首先在jsp页面导入标签<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions&quo ...
- JSTL标签库
JSP页面作为内嵌java的Html简化了Servlet在控制页面显示的语法,但JSP脚本中的表达式功能不够强大,语法也稍显繁杂,EL(Expression Language)表达式语言的出现能够大大 ...
- 重温JSP学习笔记--与日期数字格式化有关的jstl标签库
上一篇笔记写的主要是JSTL的core标签库,如果想对一些数字或者日期做一些操作或者在网页上显示指定格式的数字或日期,jstl还提供了另一个fmt标签库,这里简单介绍一下: 第一步,导入标签库: &l ...
- 重温JSP学习笔记--JSTL标签库
以前写jsp的时候对jstl标签库是有些抵触的,因为我觉得嵌入java代码的方式几乎无往不利,没有必要使用标签库,不过这次复习还是好好地学习了一下,发现这个还是很有用处的,用得好能省不少事,JSTL是 ...
随机推荐
- 彻底弄懂jQuery事件原理一
jQuery为我们提供了一个非常丰富好用的事件API,相对于浏览器自身的事件接口,jQuery有以下特点: 1. 对浏览器进行了兼容性处理,用户使用不需要考虑浏览器兼容性问题 2. 事件数据是保持在内 ...
- 源码编译运行android emulator
source buile/envsetup.sh lunch sdk-eng make sdk -j2 编译完之后,sdk安装在了下面的目录里 ANDROIID_DIR/out/host/linux- ...
- cn_office_Professional_Plus_2010_vol_with_sp2-【x86+x64仅2.45GB】
用官方sp2补丁在cn_office_Professional_Plus_2010_vol基础上集成,无其他任何添加及修改! 文件: cn_office_Professional_Plus_2010_ ...
- MyEclipse10 中设置Jquery提醒,亲测可用
最近做练习需要用到Jquery,在myeclipse中默认没有提示功能.然后在网上找解决方案,有一种方案说使用spket,然后搜索安装,折腾了半天还是不行,脑细胞死掉几百个.. 然后在网上搜到另外一种 ...
- HTML, CSS. JS的各种奇淫技巧
1. js 中为了省字节,性能, 防止被重写等发明了各种写法,记录下 //取整 parseInt(a,10); //Before Math.floor(a); //Before a>>0; ...
- 手机dp和px的转换
1dp 0.75px ----> 320*240 1dp 1px ----->480*320 1dp 1.5px ----->800*480 4 ...
- springboot整合mybatis增删改查(三):mybatis逆向工程
上一篇已经把项目基本框架完善,接下来就是利用Mybatis Generator逆向工程进行mybatis的整合. 我们在创建项目开始的时候已经勾选web,mybatis,sql等,但是这些依赖还是不够 ...
- Python面试题(十三)
1.用最简洁的方式初始化这样一个变量:foo = [4,16,36,64,100] [i*i for i in range(2,12,2)] 答案 2.使用生成器编写fib函数,函数声明为fib(ma ...
- json-patch 了解
What is JSON Patch? JSON Patch is a format for describing changes to a JSON document. It can be used ...
- windows内存debug技巧
A) c++ memory/heap corrupt debug 技巧 1. catch first exception2. data breakpointVC tell us some addres ...