EL:Expression language

news/2024/7/8 3:49:52

在传统的jsp页面中,使用<% java代码 %>显示数据有许多的弊端。
比如类型转换,需要处理的null,代码参杂。
采用EL,JSTL等就方便了很多。
EL:
实例:
${requestScope.student.address.schoolAddress} 这里是request域
${域对象.域对象中的属性.属性.属性… (一直级联属性)}

EL的操作符:
点操作符: 使用简单方便
[" “]操作符或者[ ’ ’ ]: 功能强大,可以获取特殊符号(。——+;等),可以获取变量值,可以访问数组,可以获取Map对象。
[” reauestScope “][” student “][” address “][” schoolAddress “]…[” “][” “][” "]

JSTL
是比EL更强大,但是eclipse不自带。
1.需要映入jar包(jstl.jar)和辅助jar包(standard.jar)。
2.引入tablib:<%@taglib uri =“http://java.sun.com/jsp/jstl1/core” prefix=“c”>其中prefix=“c"是前缀。
核心标签库:通用标签库,条件标签库,迭代标签库。
通用标签库:<c:set>赋值
①在某个作用域中给变量赋值。
request.setAttribute(” name",“zhangsan”);
==<c:set var=“name” value=“zhangsan” scope=“request”> ; ${requestScope.name}
②可在某个对象的属性赋值。
r e q u e s t S c o p e . s t u d e n t . n a m e ; &lt; c : s e t t a r g e t = &quot; {requestScope.student.name}; &lt;c:set target=&quot; requestScope.student.name;<c:settarget="{requestScope.student}" property=“sname” vaule=“zxs”>;//不能指定scpoe
${requestScope.student.name}

取出:<c: out>非常强大,自带default默认值;(https,加上s代表加密)

remove:删除一个变量,从域中删除。

选择:<c:if test=“条件” scope="" var=“result”>//单选,result为结果域,scope为域

<c:choose>
<c:when test="">内容</c:when>
<c:when test=""></c:when>
<c:when test=""></c:when>

<c:otherwise test=""></c:otherwise>
</c:choose>

循环(对应java的两种形式):<c:foreach begin=“0” end=“5” step=“1”>></c:foreach>
<c:foreach var=“name” items="${requestScope.names}"></c:foreach>


http://www.niftyadmin.cn/n/1967383.html

相关文章

android 输入框 XML 设置于代码设置异同

android InputType 参数对应代码设置 详见android SDK android XML设置EditText输入格式参数对应constant列 android:inputTypeXXX android java代码设置EditText输入格式参数对应Description列 setInputType(XXXXXXXX)或者setRawInputType(XXXXXXXX) 需要注意XML部分参数值…

c++中的header-only library

不同于在java中&#xff0c;虽然在java中&#xff0c;有些第三方库只是做了桥接的功能&#xff0c;比如slf4j-log4j-api&#xff0c;但是在运行时他们仍然是需要的&#xff0c;所以最多只能说是松耦合做得很好。 但是在c中&#xff0c;一般我们应用第三方库的时候&#xff0c;是…

过滤器和拦截器,监听器

过滤器&#xff08;filter&#xff09;&#xff1a;请求&#xff0c;响应&#xff0c;需要拦截器放行。 实现一个接口&#xff0c;init(初始化)&#xff0c;destroy&#xff08;摧毁&#xff09;,需要在xml中配置过滤器。 配置过滤器&#xff0c;同配置servlet一样。 <filt…

经纬度距离搜索数据库操作以及hibernate操作、Java比较两点间的距离

数据库语句&#xff1a; select * from ls_region_user order by ACOS(SIN((39.975092 * 3.1415) / 180 ) *SIN((lat * 3.1415) / 180 ) COS((39.975092 * 3.1415) / 180 ) * COS((lat * 3.1415) / 180 ) *COS((116.385476 * 3.1415) / 180 - (lng * 3.1415) / 180 ) ) * 6378.…

ajax传输

ajax:异步传输jsxml 异步刷新&#xff1a;网页中只有某一块需要修改&#xff0c;不影响其他块。比如说弹幕&#xff0c;点赞等&#xff01; 实现&#xff1a; js: XMLHttpRequest 对象&#xff1b; 该对象的方法&#xff1a; open( 提交方式,服务器地址 ,true):与服务器建立连…

20170210解题报告

精英班考试题 2017.2.10 题目名 工资 藏妹子之处 银河之星 源文件 money.cpp/c/pas excel.pas/cpp galaxy.cpp/c/pas 输入文件 money.in excel.in galaxy.in 输出文件 money.out excel.out galaxy.out 时间限制 1000MS 1000MS 1000MS 内存限制 256MB 128…

MySQL 关于count与group by一起用的效果

本来想要效果是有多少个userId&#xff0c;结果却显示的是&#xff0c;去重后每组userId有多少个。 select count(id) from ls_wweb_log_call where userId is not null and companyUserId:companyUserId and createDate BETWEEN :nowDate AND :nextDate group by userId后来使…

Jackson将实体转为json形式,且未空或者null(不参加序列化)

Jackson将实体转为json形式&#xff0c;且未空或者null(不参加序列化), 常见用法&#xff1a; ObjectMapper mappernew ObjectMapper().setSerializationInclusion(JsonIclude.Inculde.NON_NULL) 常见还有&#xff1a;Include.ALAWAYS 默认&#xff1b;NON_DEFAULT 默认不序列化…