JSTL常用标签库
2016-08-15 13:02
357 查看
1)<c:out>
<c:out>标签用于输出一段文本内容到pageContext对象当前保存的"out"对象中,即:将内容输出给浏览器。该标签有三个属性可选,value属性指定要输出的内容;escapeXml指定是否将<、>、&、`等特殊字符进行html编码转换后再进行输出,默认为true;default属性指定如果value属性的值为null时所输出的默认值。该标签主要用于escapeXml属性和default属性
2)<c:set>
<c:set>标签用于把某一个对象存在指定的域范围内,或者设置web域中的java.util.Map类型的属性对象或javaBean类型的属性对象的属性。有如下属性:value:用于指定属性的值;
scope:用于指定属性所在的web域;
var:用于指定要设置的web域属性的名称;
target:用于指定要设置属性的对象,这个对象必须是javaBean对象或者java.util.Map对象;
property:用于指定当前为对象设置的属性名称。
[html] view
plain copy
<!-- c:set标签 :向web域中存数据,向map或Bean中存数据-->
<c:set var="data" value="xxx" scope="page"/>
${pageScope.data }
<%
Map map = new HashMap();
request.setAttribute("map", map);
%>
<c:set property="data" value="yyy" target="${map }" />
${map.data }
<c:set property="name" value="eson_15" target="${person }"/>
${person.name }
3) <c:remove>
<c:remove>标签用于删除各种web域中的属性:[html] view
plain copy
<c:remove var="varName" [scope="{page|request|session|application}"]/>
4)<c:if>
<c:if>标签可以判断是否执行标签体[html] view
plain copy
<c:if test="${user==null}" var="result" scope="page">
xxx
</c:if>
如果test中的表达式为真则执行标签体,另外将test的值保存在page域中,保存参数为result,可以通过${result}获取保存的值。
5)<c:choose>
标签用于构造条件判断语句[html] view
plain copy
<c:choose>
<c:when test="${count == 0}">
对不起,没有符合您要求的记录
</c:when>
<c:otherwise>
符合您要求的记录共有${count}条
</c:otherwise>
</c:choose>
6)<c:forEach>
<c:forEach>标签用于对一个集合对象中的元素进行循环迭代操作,或者按指定的次数重复迭代执行标签体中的内容。它有如下属性:var属性:指定当前迭代到的元素保存到page域中的属性名称;
items属性:将要迭代的集合对象;
begin属性:如果指定items属性,就从集合中的第begin个元素开始迭代,begin的索引值从0开始编号;如果没有指定items属性,就从begin指定的值开始迭代,直到end值结束。
step属性:指定迭代的步长。
[html] view
plain copy
<!-- c:forEach标签 -->
<c:forEach var="num" begin="1" end="10" step="1">
${num } <!-- 输出1-10 -->
</c:forEach> <br>
<%
List list = Arrays.asList("1","2");
request.setAttribute("list", list);
%>
<c:forEach var="index" begin="0" end="${fn.length(list) }">
${list[index] }
</c:forEach>
<c:forEach var="index" items="${list}">
${index}
</c:forEach>
7)<c:param>标签
在JSP页面进行url的相关操作时,经常用在url地址后面附加一些参数。<c:param>标签可以嵌套在<c:import>、<c:url>或<c:redirect>标签内,为这些标签所使用的url地址附加参数。<c:param>标签在为一个url地址附加参数时,将自动对参数值进行url编码,例如,如果传递的参数为“中国”,则将其转换为"%d6%d0%b9%fa"后再附加到url地址后面,这也就是使用<c:param>标签的最大好处。如:<c:paramname="name" value="value"/>
<c:url>标签用于在JSP页面中构造一个url地址,其主要目的是实现url重写。url重写就是将会话标识号以参数形式附加在url地址后面(关于url重写,在总结session技术的时候有写到)。它有如下属性:
value属性:指定要构造的url;
var属性:指定将构造出的url结果保存到web域中的属性名称
scope属性:指定将构造出的url结果保存到那个web域中
[html] view
plain copy
<!-- c:url标签(重点) -->
<a href="<c:url value="/servlet/servletDemo1"/>">点点</a>
<c:url value="/servlet/servletDemo2" var="servletdemo2"><!-- 如果没有var,则会把地址直接打给浏览器 -->
<c:param name="name" value="中国"/> <!-- 中国两个字已经被url编码了 -->
<c:param name="password" value="我是一个"></c:param>
</c:url>
<a href="${servletdemo2}">点点</a>
<c:redirect>标签用于实现请求重定向。
url属性:指定要转发或重定向到的目标资源的url地址;
context:当要使用相对路径重定向到同一个服务器下的其他web应用程序中的资源时,context属性指定其他web应用程序的名称。
相关文章推荐
- ES6学习笔记3--Set
- json基础知识介绍(数据类型)
- JavaScript实战-菜单特效
- JS获取页面超链接传来的参数
- [译] JavaScript Fetch API
- js常用方法
- 针对java项目高CPU和高内存使用jstack命令来查找错误代码所在
- javaScript中小数取整,四种方法的比较
- IE下JS保存图片
- 友好时间显示的javascript代码
- JS判断浏览器种类
- JS创建事件的三种方式(实例)
- 使用jsp/servlet简单实现文件上传与下载
- org.json使用
- extjs 如何取grid中单元格的值
- Javascript异步编程的4种方法
- js中获取jsp表单中radio类型的值简单实例
- js收集的一些好的题型
- JSTL标签库
- 什么是闭包?在js中的作用是什么?