分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 前端开发

el和jstl概述

发布时间:2023-09-06 01:43责任编辑:白小东关键词:js
一、el表达式

1、概述:jsp的内置表达式语言,用来替代<%=..%>

${el表达式}

2、作用:

1)获取数据

a、获取简单属性

${属性名}:依次从pageContext,request,session,application查找指定属性,

若查找到返回值,结束该次查找,若查找不到,返回""

b、获取复杂数据

获取数组中的数据

${域中的名称[index]}

获取list中的数据

${域中的名称[index]}

获取map中的数据

${域中的名称.键名}

c、获取Javabean属性值

${域中javabean名称.bean属性}

2)执行运算

a、四则运算

+:只能进行加法运算,字符串形式数字可以进行加法运算

b、关系逻辑运算符

b、empty

判断一个容器的长度是否为0(array set list map),还可以判断一个对象是否为空

${empty list}

c、取反not empty

d、三元运算符

${ 3>4?"yes":"no" }

3、el的11个内置对象

PageContext表示此JSP的PageContext

在jsp页面中获取项目名${pageContext.request.contextPath}

PageScope取得Page范围的属性名称所对应的值

RequestScope取得Request范围的属性名称所对应的值

sessionScope取得Session范围的属性名称所对应的值

applicationScope取得Application范围的属性名称所对应的值

param如同ServletRequest.getParameter(String name)。回传String类型的值

paramValues如同ServletRequest.getParameterValues(String name)。回传String[]类型的值

header如同ServletRequest.getHeader(String name)。回传String类型的值

headerValues如同ServletRequest.getHeaders(String name)。回传String[]类型的值

initParam如同ServletContext.getInitParameter(String name)。回传String类型的值

cookie如同HttpServletRequest.getCookies()

java中Cookie的api

getName():获取cookie的名称

getValue():获取cookie的value值

二、jstl表达式

1、概述:jsp标准的标签库语言,用来替代java脚本

<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c/fmt/fn" %>

2、分类

1)core:核心类库

a:c:if 判断

<c:if test="${el表达式}">满足的时候输出的内容</c:if>

例如:判断登录

<c:if test="${not empty name }">

${name}欢迎你!

</c:if>

<c:if test="${empty name }">

你尚未登陆请重新登陆<a href="${pageContext.request.contextPath}/login.jsp">点击登陆</a>

</c:if>

b:c:forEach 循环

格式1:

<c:forEach begin="从那里开始" end="到那里结束" step="步长" var="给变量起个名字" varStatus="循环状态变量">

${i }--${vs.count }--${vs.current }<br>

//count:记录次数 从1开始 current:当前遍历的内容 index: 索引 从0开始

</c:forEach>

例:<c:forEach begin="1" end="20" step="2" var="i" varStatus="vs">

${i }--${vs.count }--${vs.current }<br>

</c:forEach>

格式2:

<c:forEach items="${el获取域中的容器}" var="n">

${n}

</c:forEach>

例:<c:forEach items="${map}" var="en">

${en.key }-- ${en.value }<br/>

</c:forEach>

c:c:url 自动补项目路径,自动url重写

<a href='<c:url value="/foreach.jsp" />'>foreach.jsp</a>

相当于:<a href="${pageContext.request.contextPath}/foreach.jsp">foreach.jsp</a>

2)fmt:国际化

<fmt:formatDatevalue="要显示的日期" type="DATE/TIME/BOTH" dateStyle="FULL/LONG/MEDIUM/SHORT/DEFAULT"

timeStyle="FULL/LONG/MEDIUM/SHORT/DEFAULT" pattern="自定义格式模式" timeZone="显示日期的时区"

var="存储格式化日期的变量名" scope="存储格式化日志变量的范围" />

3)xml/sql:已过时

4)函数库:

fn:contains(string,substring) 是否包含

fn:containsIgnorrCase(string,substring)忽略大小写

fn:endsWith(string,suffix) 是否以suffix结尾

fn:startsWith(string,prefix) 是否以prefix开头

fn:substring(string,begin,end) 返回字串 以begin开始end结束

fn:substringAfter(string,substring)

fn:substringBefore(string,substring)

fn:toLowerCase(string) 变小写

fn:toUpperCase(string) 变大写

fn:trim(string) 去除首尾空格

fn:escapeXml(string) xml/html转换

fn:indexOf(string,substring) 返回第一次出现的索引

fn:join(array,separator) 返回字串,用separator代替array里的分隔符

fn:length(item) 返回长度

fn:replace(string,before,after) 替换

fn:split(string,separator) 以separator为分隔符分割string 返回数组


el和jstl概述

原文地址:http://blog.51cto.com/378213986/2072158

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved