jstl与el学习笔记

it2025-12-23  12

EL(Expression Language,表达式语言):

Jsp2.0后不仅可以在jstl中应用而且可以直接在jsp中应用,常见写法${expression}

长于jstl标签的test属性一起构成条件判断,如:

<c:if test=${param.age>100}>

年龄大于100

</c:if>

param是el的内置对象,表请求参数

paramValues也是内置对象,表情求参数数组,使用:${paramValues[2]}等等

JSTL(JSP Standard Taglib Language,jsp标准标签库)

有5个组成部分:

core:c

format:fmt

functions:fn

xml:xml

sql:sql

使用举例:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>My JSP 'choose.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> </head> <body> <% String[] namesStr = new String[]{"n1", "n2", "n3", "n4"}; Map<String, String> dictMap = new HashMap<String, String>(); dictMap.put("k1", "v1"); dictMap.put("k2", "v2"); pageContext.setAttribute("names", namesStr); pageContext.setAttribute("dict", dictMap); %> <c:forEach var="name" items="${names}" begin="1" end="2" step="1" varStatus="i"> 名称:${name},序号:${i.index },已经输出:${i.count },是否是第一个元素:${i.first },最后?:${i.last }<br/> </c:forEach> <br/> <br/> <c:forEach var="name" items="${dict}"> 键:${name.key},值:${name.value }。<br/> </c:forEach> </body> </html>   结果: 名称:n2,序号:1,已经输出:1,是否是第一个元素:true,最后?:false名称:n3,序号:2,已经输出:2,是否是第一个元素:false,最后?:true键:k1,值:v1。键:k2,值:v2。

转载于:https://www.cnblogs.com/nysanier/archive/2011/09/25/2190575.html

相关资源:数据结构—成绩单生成器
最新回复(0)