1、JSTL标签库

标签库 作用 URI 前缀
核心 包含Web应用的常见工作,如循环、输入输出等 http://java.sun.com/jsp/jstl/core c
国际化 语言区域、消息、数字和日期格式化 http://java.sun.com/jsp/jstl/fmt fmt

2、Core标签库

  核心标签库分四类:

  • 多用途核心标签。<c:out>、<c:set>、<c:remove>、<c:catch>
  • 条件控制标签。<c:if>、<c:choose>、<c:when>、<c:otherwise>
  • 循环控制标签。<c:forEach>、<c:forTokens>
  • URL相关标签。<c:import>、<c:url>、<c:redirect>、<c:param>

3、<c:if>

属性 描述
test 需要判断条件
var 保存判断结果的变量名,该变量的值为true或false
scope 变量的作用域,默认为page

4、<c:forEach>

属性 描述
begin 开始条件,如果指定items,循环将从begin指定的索引处开始。
end 结束索引,如果指定items,循环将从end指定索引处结束。
step 循环的步长,默认为1
items 遍历的集合对象
var 循环集合元中的素的变量名
varStatus 保存循环状态的变量

5、简单应用

jsp页面对标签库的引用需要提供jstl的jar包,jar包官方网页版说明如下图示,也可以参考帖子https://blog.csdn.net/qq_32115439/article/details/54685786

 package com.alphajuns.domain;

 public class Book {

     private Integer id;
private String name;
private String author; public Book() {
super();
} public Book(Integer id, String name, String author) {
super();
this.id = id;
this.name = name;
this.author = author;
} public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
} }
 package com.alphajuns.controller;

 import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map; import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod; import com.alphajuns.domain.Book; @Controller
public class TestController { @RequestMapping(value="/forEachTest", method=RequestMethod.GET)
public String registerForm(Model model) {
// 页面用于遍历的List集合
List<String> strList = new ArrayList<String>();
strList.add("JavaEE");
strList.add("Mybatis");
strList.add("Spring");
// 页面用于遍历的List集合
List<Book> bookList = new ArrayList<Book>();
bookList.add(new Book(1, "Spring实战", "Craig Walls"));
bookList.add(new Book(2, "疯狂Java讲义", "李刚"));
bookList.add(new Book(3, "通信原理", "樊昌信"));
bookList.add(new Book(4, "计算机网络", "谢希仁"));
bookList.add(new Book(5, "现代交换原理", "吕瑞宏"));
// 定义map
Map<Integer, Book> bookMap = new HashMap<Integer, Book>();
bookMap.put(1, new Book(1, "C语言程序设计", "谭浩强"));
bookMap.put(2, new Book(2, "数据结构", "严蔚敏"));
bookMap.put(3, new Book(3, "模拟电子技术", "童诗白"));
model.addAttribute("strList", strList);
model.addAttribute("bookList", bookList);
model.addAttribute("bookMap", bookMap);
return "forEachTest";
} }
 <%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<font color="red">普通循环</font>
<table width="400" border="1px" cellspacing="0" cellpadding="0">
<tr>
<td>index</td><td>count</td><td>isFirst</td><td>isLast</td>
</tr>
<c:forEach begin="1" end="5" step="2" varStatus="vs">
<tr>
<td>${vs.index }</td>
<td>${vs.count }</td>
<td>${vs.first }</td>
<td>${vs.last }</td>
</tr>
</c:forEach>
</table>
<br> <font color="red">遍历元素为String的List集合</font>
<table width="400" border="1px" cellspacing="0" cellpadding="0">
<tr>
<td>编号</td><td>书名</td><td>作者</td>
</tr>
<c:forEach items="${requestScope.bookList }" var="book">
<tr>
<td>${book.id }</td>
<td>${book.name }</td>
<td>${book.author }</td>
</tr>
</c:forEach>
</table>
<br> <font color="red">遍历Map集合</font>
<table width="400" border="1px" cellspacing="0" cellpadding="0">
<tr>
<td>Key</td><td>编号</td><td>书名</td><td>作者</td>
</tr>
<c:forEach items="${requestScope.bookMap }" var="entry">
<tr>
<td>${entry.key }</td>
<td>${entry.value.id }</td>
<td>${entry.value.name }</td>
<td>${entry.value.author }</td>
</tr>
</c:forEach>
</table>
</body>
</html>

EL表达式与JSTL标签库(二)的更多相关文章

  1. JSP、EL表达式、JSTL标签库干货(建议收藏)

    JSP(Java Server Pages)类似于ASP技术,它是在传统的网页HTML文件(.htm,.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件, ...

  2. Struts标签、Ognl表达式、el表达式、jstl标签库这四者之间的关系和各自作用

    我之前虽然会用,但是一直分不清彼此之间有什么区别,所以查找资料,将它们进行整合区分,加深了解, 一 介绍 1.Struts2的作用   Struts2标签库提供了主题.模板支持,极大地简化了视图页面的 ...

  3. Java实战之04JavaWeb-04JSP、EL表达式、JSTL标签库

    一.jsp部分 只要是与页面显示相关的都是重点 1.jsp的脚本 <%java代码%>:被翻译到service方法内部,局部变量,局部的功能 <%=表达式或变量%>:翻译成se ...

  4. EL表达式、JSTL标签库

    一.EL(Expression Language)表达式 语法结构:${var} 若要停用对EL表达式的评估的话,需要使用page指令将isELIgnored属性值设为true: <%@ pag ...

  5. Java第三阶段学习(十四、JSP动态页面、EL表达式、JSTL标签库)

    一.JSP技术 1.jsp脚本和注释 jap脚本: 1)<%java代码%> ----- 内部的java代码翻译到service方法的内部,比如写在doget.dopost 内的代码 2) ...

  6. 个人整理的jsp、EL表达式、JSTL标签库的笔记,少概念多实用,需要的留下邮箱,会第一时间分享原稿PDF给大家!

    jsp 第一章 jsp介绍及对比servlet 作用: 动态网页技术,动态的从数据库获取数据 jsp和servlet的优缺点: jsp优点:页面表现方便,利于写html代码 jsp缺点:业务逻辑处理麻 ...

  7. EL表达式和JSTL标签库

    expresion language表达式语言 可以输出表达式的值.跟jsp的表达式脚本一样.计算表达式的值后输出.  EL表达式出现的目的是为了使JSP写起来更加简单,让jsp的代码更佳简化. 1. ...

  8. JavaWeb基础—EL表达式与JSTL标签库

    EL表达式: EL 全名为Expression Language.EL主要作用 获取数据(访问对象,访问数据,遍历集合等) 执行运算 获取JavaWeb常用对象 调用Java方法(EL函数库) 给出一 ...

  9. jsp页面使用EL表达式 使用Jstl标签库中的标签,需要引入jstl.jar和standard.jar

    spring boot 中使用jstl 首先在pom中加入 <dependency> <groupId>jstl</groupId> <artifactId& ...

随机推荐

  1. 【PKUSC2018】星际穿越

    被 scb 神仙教育来扫荡北大营题目 Orz Description https://loj.ac/problem/6435 Solution 首先有个很显然的性质,就是对于一组询问 \(l,r,x\ ...

  2. 安装Angulr CLI

    参考文档 https://www.jianshu.com/p/327d88284abb http://blog.csdn.net/zhy13087344578/article/details/6074 ...

  3. 解决Android无法正常https://dl.google.com/dl/android/maven2/com/的办法

    最近需要进行移动开发,在安装Android Studio时,遇到了很纠结的问题,安装一直很不顺利.经过2天的百度搜索终于是找到解决的办法. 问题花了2天的时间才从茫茫大海中找到确切的答案.所以必须开个 ...

  4. 题解 POJ1149 Pigs

    先翻译一下吧(题面可以在原OJ上找) Mirko在一个由M个锁着的猪舍组成的养猪场工作,Mirko无法解锁任何猪舍,因为他没有钥匙.客户纷纷来到农场.他们每个人都有一些猪舍的钥匙,并想购买一定数量的猪 ...

  5. java上传大文件解决方案

    需求:项目要支持大文件上传功能,经过讨论,初步将文件上传大小控制在10G内,因此自己需要在项目中进行文件上传部分的调整和配置,自己将大小都以10G来进行限制. 第一步: 前端修改 由于项目使用的是BJ ...

  6. javaScript高级程序设计第3版笔记

    <script src = "xxx.js" defer = "defer"> </script> 在引用外部script时,<s ...

  7. Word:表格在页面中垂直居中

    本文适用于Word 2007 + Windows 7,熊猫帮帮主@cnblogs 2018/2/22 如何让表格在页面上垂直居中呢.想当然的认为这属于表格的设置,在表格属性和其它表格相关选项中一通猛找 ...

  8. 3622 假期(DP+单调队列优化)

    3622 假期 时间限制: 1 s 空间限制: 64000 KB 题目等级 : 黄金 Gold 题目描述 Description 经过几个月辛勤的工作,FJ决定让奶牛放假.假期可以在1-N天内任意选择 ...

  9. 『NOIP 2019Day2 T3』 保卫王国(defense)

    重温NOIP2018的试题,发现只要好好想想还是能想出一些东西的. 比如说本题是一个DDP的模板题,硬是做成了倍增优化DP的题目. 对于给出的$n$个节点的树,每个点都有点权$v_i$,共$Q$次询问 ...

  10. 顺序表应用2:多余元素删除之建表算法(SDUT 3325)

    题解: 每次询问一遍,如果已经存在就不用插入表中了. #include <stdio.h> #include <stdlib.h> #include <string.h& ...