当前位置: 首页 > news >正文

JSTL总结摘要

一 概述

1.什么是JSTL?

JSP Standard Taglib,一个定义了一系列标签的标签库,以取代在JSP页面中嵌套的java代码,经常与EL结合使用,使页面风格统一,维护方便。
JSTL标签都是成对出现的。

二 表达式标签

主要用于向作用域范围添加属性、获取属性、移除属性。作用范围从小到大依次为page<request<session<application,默认page。

  • <c:out var="expression"[default="]["scope=""]>:用于将表达式的值输出到JSP页面。
  • <c:set var="varName"value="value"[scope=""]>:向作用域范围添加属性。
  • <c:remove var="varName"[scope=""]>:用于删除指定作用域范围内的属性。
  • <c:catch var="">:用于捕获异常,并将异常存储在指定的属性中。

三 URL标签

  • <c:import url="url">:用于导入站内或者站外资源。
  • <c:url value=""[var=""][scope=""]>:生产一个url路径,用于赋值。
  • <c:redirect url="url">:页面重定向。
  • <c:param name=""value="">:用于在页面重定向时传递请求参数。

四 流程控制标签

1.条件判断标签

<c:if test="表达式"var="res"[scope=""]>标签体</c:if>

条件成立执行标签体。

2.条件选择标签

<c:choose>
     <c:when test="">标签体</c:when>
     <c:when test="">标签体</c:when>
      ...................
     <c:otherwise>标签体</c:otherwise>
</c:choose>

从多个条件中选择一个执行。

五 循环标签

1.简单循环标签

<c:forEach items="sup"var="sub"begin=""end=""step=""varStatus="">标签体</c:forEach>
  • items:需要遍历的对象,通常通过EL表达式获取。
  • var:当前遍历子对象,即被遍历对象的一个元素。
  • begin:遍历开始的索引位置。
  • end:遍历结束的索引位置。
  • step:每次遍历时采取的步数,即相邻两个遍历索引的差值。
  • varStatus:代表遍历状态的一个对象,通过该对象不仅可以判断当前遍历是否是第一次遍历,或者最后一次遍历,还可以获取当前索引值,遍历次数。

遍历Map集合:

<c:forEach items="map"var="entry">
      ${entry.key}=&{entry.value}
</c:forEach>

2.迭代标签

<c:forTokens items=""var=""delims=""begin=""end=""step=""varStatus="">标签体</c:forTokens>

先分割,后遍历,分割可以采用多个分隔符,多个分隔符统一定义在delims中,紧凑排列,不加“,”,不留空格。

 

转载于:https://www.cnblogs.com/tonghun/p/7196377.html

相关文章:

  • javascript 一些注意事项
  • XSS学习分支图
  • springCloud(10):使用Feign实现声明式REST调用-构造多参数请求
  • leetcode 228: Summary Ranges
  • Tomcat访问日志详细配置(转)
  • Android零基础入门第8节:HelloWorld,我的第一趟旅程出发点
  • Windows下使用VNC连接CentOS7远程桌面
  • Linux CentOS 7 下 JDK 1.7 安装与配置
  • “业务为王”时代下,DevOps怎么玩?
  • Java中的Filter过滤器
  • leetcode98. Validate Binary Search Tree
  • Java8新特性值Lambda ---匿名函数
  • Nginx的配置文件
  • DFS中的奇偶剪枝学习笔记
  • ubuntu 下 安装 sublime Text3
  • 【跃迁之路】【735天】程序员高效学习方法论探索系列(实验阶段492-2019.2.25)...
  • 【知识碎片】第三方登录弹窗效果
  • conda常用的命令
  • Java|序列化异常StreamCorruptedException的解决方法
  • Javascript基础之Array数组API
  • js ES6 求数组的交集,并集,还有差集
  • MaxCompute访问TableStore(OTS) 数据
  • React-flux杂记
  • Redis在Web项目中的应用与实践
  • Terraform入门 - 1. 安装Terraform
  • Vue2.x学习三:事件处理生命周期钩子
  • 分享一份非常强势的Android面试题
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • 记一次和乔布斯合作最难忘的经历
  • 将回调地狱按在地上摩擦的Promise
  • 开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
  • 两列自适应布局方案整理
  • 漫谈开发设计中的一些“原则”及“设计哲学”
  • hi-nginx-1.3.4编译安装
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • 通过调用文摘列表API获取文摘
  • ​RecSys 2022 | 面向人岗匹配的双向选择偏好建模
  • #pragma预处理命令
  • #微信小程序:微信小程序常见的配置传值
  • $ is not function   和JQUERY 命名 冲突的解说 Jquer问题 (
  • (1)Map集合 (2)异常机制 (3)File类 (4)I/O流
  • (42)STM32——LCD显示屏实验笔记
  • (C语言)编写程序将一个4×4的数组进行顺时针旋转90度后输出。
  • (二)Linux——Linux常用指令
  • (二)学习JVM —— 垃圾回收机制
  • (附源码)springboot优课在线教学系统 毕业设计 081251
  • (五)c52学习之旅-静态数码管
  • .【机器学习】隐马尔可夫模型(Hidden Markov Model,HMM)
  • .Net Attribute详解(上)-Attribute本质以及一个简单示例
  • .NET Core 2.1路线图
  • .NET Core实战项目之CMS 第十二章 开发篇-Dapper封装CURD及仓储代码生成器实现
  • .net core使用RPC方式进行高效的HTTP服务访问
  • .net MySql
  • .Net Redis的秒杀Dome和异步执行
  • .ui文件相关