-
EL表达式与JSTL标准标签库
1. 什么是EL表达式?#
EL表达式全称:Expression Language 表达式语言,由SUN公司推出
EL表达式作用:简化JSP代码,代替复杂的Java代码,从此JSP中不会出现Java代码
2. 运行环境#
JSTL与EL表达式必须支持在J2EE1.4、Servlet2.4、JSP2.0版本,从Tomcat5以后就有这个版本了,这个环境已经很普遍
3. EL表达式的语法#
EL表达式由$
和{}
组成,例如:${}
-
普通类型:
${key值}
或request.getAttribute("key值")
-
对象类型;
${key值.属性名}
或${key值['属性名']}
-
${list[0].userName }
-
${map['a'].userName }
注:其中的属性名并不是类中的属性名称,是调用了属性名的get方法,首字母变大写,前面加get,类中属性名的命名前两个字母不允许出现大写
4. EL表达式内置对象#
4.1 参数访问对象#
${param.参数名}
或request.getParameter("参数名");
${paramValues.参数名}
或request.getParameterValues("参数名");
4.2 作用域访问对象#
pageContext:$(pageScope.key值)
request:$(requestScope.key值)
session:$(sessionScope.key值)
application:$(applicationScope.key值)
注:如果不指定作用域先由小到大去查询,顺序为:pageContext、request、session、application
4.3 JSP页面信息对象#
JSP页面信息内置对象:pageContext
5. 常用的转义符#
符号 | 释义 |
---|---|
== | eq |
!= | ne |
< | lt |
<= | le |
> | gt |
>= | ge |
&& | and |
! | not |
6. JSTL#
6.1 什么是JSTL?#
JSTL全称:JavaServerPage Standard Tag Library(JSP标准标签库)
6.2 JSTL标签库包含哪些?#
- 核心库
- 函数库
- SQL库(几乎不用)
7. 核心库(☆)#
7.1 核心库标签#
引用指令:<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"
核心库语法:<c:标签名></c:标签名>
7.2 常用标签#
标签 | 描述 |
---|---|
<c:out> | 用于输出 |
<c:set> | 把变量存储到指定的范围中,scope默认为:page |
<c:remover> | 删除指定范围的变量,scope不写删除四个范围 |
<c:if> | 用于条件判断 |
<c:choose> | 用于一组的条件判断 |
<c:when> | 一组判断条件中的某个判断,结合<c:choose>使用 |
<c:otherwise> | 一组条件中的else,结合<c:choose>使用 |
<c:foreach> | 用于循环遍历 |
8. 格式化库#
8.1 格式化标签库#
作用:格式时间、格式数字
引用指令:<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
格式化库语法:<fmt:标签名></fmt:标签名>
8.2 常用标签#
格式化时间:<fmt:formatDate value="${date }"/>
格式化数字:<fmt:formatNumber value="${num }"/>
9. 函数库#
9.1 函数标签库#
作用:利用函数得到相应的结果
引用指令:<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
语法:${fn:函数名}
9.2 常用函数:#
-
fn:contains(string, substring)
- 如果参数string中包含参数substring,返回true
-
fn:containsIgnoreCase(string, substring)
- 如果参数string中包含参数substring(忽略大小写),返回true
-
fn:endsWith(string, suffix)
- 如果参数 string 以参数suffix结尾,返回true
-
fn:escapeXml(string)
- 将有特殊意义的XML (和HTML)转换为对应的XML character entity code,并返回
-
fn:indexOf(string, substring)
- 返回参数substring在参数string中第一次出现的位置
-
fn:join(array, separator)
- 将一个给定的数组array用给定的间隔符separator串在一起,组成一个新的字符串并返回。
-
fn:length(item)
- 返回参数item中包含元素的数量。参数Item类型是数组、collection或者String。如果是String类型,返回值是String中的字符数。
-
fn:replace(string, before, after)
- 返回一个String对象。用参数after字符串替换参数string中所有出现参数before字符串的地方,并返回替换后的结果
-
fn:split(string, separator)
- 返回一个数组,以参数separator 为分割符分割参数string,分割后的每一部分就是数组的一个元素
-
fn:startsWith(string, prefix)
- 如果参数string以参数prefix开头,返回true
-
fn:substring(string, begin, end)
- 返回参数string部分字符串, 从参数begin开始到参数end位置
-
fn:substringAfter(string, substring)
- 返回参数substring在参数string中后面的那一部分字符串
-
fn:substringBefore(string, substring)
- 返回参数substring在参数string中前面的那一部分字符串
-
fn:toLowerCase(string)
- 将参数string所有的字符变为小写,并将其返回
-
fn:toUpperCase(string)
- 将参数string所有的字符变为大写,并将其返回
-
fn:trim(string)
- 去除参数string 首尾的空格,并将其返回
- 原文:https://www.cnblogs.com/xiqingbo/p/java-14.html