jsp中jstl、el使用
tomcat7.0+JSTL1.1.2(不冲突) EL表达式获取变量
${表达式} 如:${user.name} 不可以动态取值
${user[name]}可以动态取值,变量名中含有特殊字符时只能用此方法
${user[0]} 1、PageScope Page
2、RequestScope Request
3、SessionScope Session
4、ApplicationScope Application 查找顺序为1234,没找到EL变量会输出为空的字符串,不是 null
EL表达式可以自动类型转换
EL 可使用算术、逻辑运算符和验证运算empty 用法是 empty+变量名,判断变量是否为空,null和 空字符串都返回true 步骤加入jar包+jsp中加入标签库<%@ taglib uri="http:xxxxxxxx" prefix="c"%>
<c:out value="xxx" default=“设输出默认值”escapeXml=“false表示转义value中的>”></c:out> 输 出xxx值,xx可以为EL表达式、常量、变量 <c:set var="变量名" scope="所在作用域" value="变量值">也可以变量值</c:set>
存值到javabean
<jsp:useBean id="person" class="com.Person"></jsp:useBean>
<c:set target="${person}" property="name" value="zhangsan"></c:set>
<c:out value="${person.name}"></c:out> <c:remove var="" /> var必选 scope可选 <c:catch var="error">
里面代码出错,会把错误信息保存在error变量中
</c:catch> <c:if test="用EL表达式写的判断条件" var="" scope=""> </c:if>
<input type="text" name="scope" value="${param.scope}">用户输入的值存放到param.scope中 <c:choose>
可含有多个when/otherwise
<c:when test="">c:out输出内容</:when>
。。。
<c:otherwise>c:out输出when条件之外的范围对应的内容</c:otherwise>
</c:choose> 全部遍历
<c:forEach var="aa代表遍历的当前元素" items="${需要遍历的变量}">
。。。进行操作aa变量
</c:forEach>
部分遍历
<c:forEach var="aa代表遍历的当前元素" items="${需要遍历的变量}" begin="1" end="4">
。。。进行操作aa变量 1/4都会输出
</c:forEach>
部分遍历制定步长(间隔多少取值)
<c:forEach var="aa代表遍历的当前元素" items="${需要遍历的变量}" begin="1" end="4" step="默认1">
。。。进行操作aa变量 1/4都会输出
</c:forEach>
状态
<c:forEach var="aa代表遍历的当前元素" items="${需要遍历的变量}" varstatus=“xx”>
。。。进行操作aa变量
输出当前元素的索引xx.index 从0开始
输出当前元素的xx.count 从1开始
输出当前元素的xx.first 判断此元素是不是第一个
输出当前元素的xx.last 判断此元素是不是最后一个
</c:forEach> <c:forTokens items="11-22-455-888" delims="-" var="num"> 拆分字符串并循环输出分割后的子字符串num
begin、end、step、varstatus与foreach用法相同
</c:forTokens> <c:import>标签与<jsp:include>
<jsp:include>只能包含同一个web应用上的文件
<c:import>可以包含其他web应用中的文件,甚至网络上的资源context="必须/开头" <c:import url="网络资源绝对路径" >
</c:import> 本项目相对路径:
<c:import url="tt.txt" charEncoding="gbk" var="tt存放txt中的内容" scope="变量作用域">
</c:import> <c:import url="/index.jsp其他项目的" context="/其他项目名">
这种用法前提是:1、修改tomcat的默认发布路径,保证都在webapps路径下
2、修改%TOMCAT_HOME%/conf/context.xml的context标签中的添加属性crossContext=“true”
重启运行
</c:import> <c:redirect url="xx.jsp">
<c:param name="xx">xxxx</c:param>重定向到xx且参数值显示在url中
在xx中获取方式:${param.xx} <c:url value="链接/${xx}" var="xxx" scope="mmm" >
var存放value中的连接,结合if可以动态生成链接
</c:redirect> JSTL常用函数
前提:加入新的taglib <%@ taglib uri="http:xxxxxxxx" prefix="fn"%> ${fn:contains("xx","xxx")} 判断xx中是否有xxx
${fn:containsIgnoreCase("xx","xxx")} 判断xx中是否有xxx,不区分大小写
${fn:endWith("xx","xxx")}
${fn:startWith("xx","xxx")}
${fn:indexOf("xx","xxx")}
... 输出XML
${fn:escapeXml("<ss>xx</ss>")} 会转义成$gt
输出XML做法<c:out value="<ss>xx</ss>"></c:out>
<td><fmt:formatDate value="${item.rewardTime }" type="time" pattern="yyyy-MM-dd HH:mm:ss"/></td> 处理时间
<td><c:if test="${item.status == 'N'}">正常</c:if>
<c:if test="${item.status == 'T'}">已调整</c:if>
</td> 处理返回字段
<c:set value="${ fn:split(mission.districtCodes, ',') }" var="str2" />${fn:length(str2) }//字符串转数组 并获取长度
jsp中jstl、el使用的更多相关文章
- jsp中的el表达式没有解析
今天发现jsp中的el表达式没有解析,把解决的过程记录一下 在web.xml的web-app节点的版本改成2.4以上
- SSH 框架controller向jsp传递List jsp中使用el表达式获取
mvc可以使用ModelAndViev传递数据选择跳转的视图 controller中的代码, 把一个模拟的表单studentListSimulate传给ModelAndView @RequestMap ...
- JSP中的EL 表达式
JSP中的EL 表达式 什么是 EL 表达式,EL 表达式的作用? EL 表达式的全称是:Expression Language.是表达式语言. EL 表达式的什么作用:EL 表达式主要是代替 jsp ...
- jsp中的EL和JSTL的关系
对于JSTL和EL之间的关系,这个问题对于初学JSP的朋友来说,估计是个问题,下面来详细介绍一下JSTL和EL表达式他们之间的关系,以及JSTL和EL一些相关概念! EL相关概念 JSTL一般要配合E ...
- JSP中 JSTL和EL标签的使用
使用JSTL前的准备 想要使用JSTL,首先需要给工程导入JSTL的包(JSTL.jar和standard.jar). JSTL简介 JSP标准标签库(JSTL)是一个JSP标签集合,它封装了JSP应 ...
- JavaWeb -- Jsp中的 EL表达式
lEL 全名为Expression Language.EL主要作用: l获取数据: •EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数据.(某个web ...
- JSP中使用EL表达式
EL表达式 :EL 全名为Expression Language,就是为了替代<%= %>脚本表达式. EL主要作用: 获取数据: EL表达式主要用于替换JSP页面中的脚本表达式,以从各种 ...
- JSP中的EL表达式详细介绍
一.JSP EL语言定义 EL 提供了在 JSP 脚本编制元素范围外使用运行时表达式的功能.脚本编制元素是指页面中能够用于在 JSP 文件中嵌入 Java 代码的元素.它们通常用于对象操作以及执行那些 ...
- jsp中jstl标签的类似 if - else 语句 的语法
在jsp中引入jstl的标签库和函数库 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c&q ...
随机推荐
- slideshare原本是一个专业的幻灯片存储与展示的网站
slideshare就是其中一个.slideshare原本是一个专业的幻灯片存储与展示的网站,它支持扩展名为ppt.pps和odp三种格式的幻灯片,用户上传成功以后slideshare会提供给用户一个 ...
- 12. I2C-EEPROM
12.1. I2C 协议简介 I 2 C ( Inter-Integrated Circuit )协议是由 Phiilps 公司开发的,由于它具引脚少,硬件实现简单,可扩展性强,不需要如 USART. ...
- POI 讀取EXCEL
/*** 獲取單元格數值* * @param cell* @return*/private String getCellValue(Cell cell) {String cellValue = &qu ...
- CentOS7下python虚拟环境
搭建python虚拟环境 1.我们先创建一个隐藏目录 .virtualenvs,所有的虚拟环境都放在此目录下 :mkdir /root/.virtualenvs 2.安装虚拟环境 确认pip:wher ...
- javascript标签放置位置
首先:放置位置哪里都能放 但是js代码很有可能不起作用:例如:往id为span的标签中定时插入数字 var time=document.getElementById("span") ...
- 【awk】 处理多个文件
处理多个文件: 1. 可以在代码中指定读取某个文件, 其他的用命令行输入 while ( geline < "file.txt" > 0 ) { ...
- docker--container
[root@localhost docker_test]# docker run bigni/test3 #运行 docker so easy ! [root@localhost docker_tes ...
- 44.Linked List Cycle II(环的入口节点)
Level: Medium 题目描述: Given a linked list, return the node where the cycle begins. If there is no cy ...
- VINS 回环检测与全局优化
回环检测 VINS回环检测与全局优化都在pose_graph.cpp内处理.首先在pose_graph_node加载vocabulary文件给BriefDatabase用,如果要加载地图,会loadP ...
- seaweedfs使用记录
搭建seaweedfs 在github上面clone,然后cd到docker目录使用docker-compose up -d就可以启动seaweedfs 启动以后通过xxx:9333可以看到效果 上传 ...