EL$JSTL简化jsp开发中的代码量

本文详细解析了EL表达式如何简化JSP中的数据获取与运算,以及JSTL标签库的使用方法,包括if、foreach等核心标签的应用场景与语法,帮助开发者提高前端展示效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

EL表达式的作用:

在取值方面,完全替代了原来jsp中的java脚本,取值非常方便,在jsp中不用导包了。
1.获取数据
我们以前从域中获取数据:getAttribute
取得参数值:getParameter
取得全局参数值等等。
2.执行运算
取得运算的布尔值搭配JSTL标签库来使用

EL表达式的语法

EL表达式是通过key来取值,${key}
例1:

<%
String str1 = (String)request.getAttribute("str1");
%>
<&=str1%>

以上例子中的getAttribute以后就可以不再使用了,key就是str1
${requestScope.str1}
xxxScope可以省略,默认从最小的域开始搜索。

EL表达式获取其他常用类型的值

使用EL表达式不用导包,自动识别。
获取的内容一般在Servlet中
1.获取数组值

${strArr[1]}

2.获取List值

${strList[1]}

3.获取Map值
域名.键名

${strMap.m1}
	Map<String,String> map = new HashMap<String,String>();
	map.put("str1","aaa");
	request.setAttribute("myMap",map);
	${myMap.str1}

4.domain

Student stu = new Student("A01","lyn",23);
	request.setAttribute("stu",stu);
	${s.id}相当于s.getId
	${s.name}
	${s.age}

JSTL的分类:

1.core核心类库: if foreach
2.fmt:格式化,将日期转换成String 国际化(用的比较少)
在servlet中处理好之后,jsp什么都不用干,拿到数据之后无脑展现
3.xml sql已经过时
4.函数库很少用

JSTL的创建步骤

1.导jar包(jstl.jar standard.jar)
2.在页面中导入标签库

<%taglib prefix="c" uri="jsp/jstl/core"%>

3.jstl标签的使用
c:if

<c:if test="${5>3}">
5是大于3的
</c:if>

因为没有else,取反来代替else,必须搭配EL表达式来使用
c:foreach
items:遍历的集合,需要搭配EL表达式来取值
var:每一次遍历出来的元素,需要搭配EL表达式来取值
varStatus:每一次遍历出来的元素的状态,常用属性count,通过取得当前元素是第几条(做序号用),搭配EL表达式来取值
begin:取值的开始下标
end:取值的结尾下标
step:每隔多少值取一个值

<c:forEach items="${sList}" var="s" varStatus="vs" begin="1" end="3">
${s}--${vs.count}<br/>
<c:forEach>
<c:set  var="count" value="4">

c:choose相当于java中switch选择结构
<c:choose>
<c:when test="${count==1}">
计数1
</c:when>
<c:when test="${count==2}">
计数2
</c:when>
<c:otherwise>
不在范围内
</c:otherwise>
</c:choose>

分数阶傅里叶变换(Fractional Fourier Transform, FRFT)是对传统傅里叶变换的拓展,它通过非整数阶的变换方式,能够更有效地处理非线性信号以及涉及时频局部化的问题。在信号处理领域,FRFT尤其适用于分析非平稳信号,例如在雷达、声纳和通信系统中,对线性调频(Linear Frequency Modulation, LFM)信号的分析具有显著优势。LFM信号是一种频率随时间线性变化的信号,因其具有宽频带和良好的时频分辨率,被广泛应用于雷达和通信系统。FRFT能够更精准地捕捉LFM信号的时间和频率信息,相比普通傅里叶变换,其性能更为出色。 MATLAB是一种强大的数值计算和科学计算工具,拥有丰富的函数库和用户友好的界面。在MATLAB中实现FRFT,通常需要编写自定义函数或利用信号处理工具箱中的相关函数。例如,一个名为“frft”的文件可能是用于执行分数阶傅里叶变换的MATLAB脚本或函数,并展示其在信号处理中的应用。FRFT的正确性验证通常通过对比变换前后信号的特性来完成,比如评估信号的重构质量、信噪比等。具体而言,可以通过计算原始信号与经过FRFT处理后的信号之间的相似度,或者对比LFM信号的关键参数(如初始频率、扫频率和持续时间)是否在变换后得到准确恢复。 在MATLAB代码实现中,通常包含以下步骤:首先,生成LFM信号模型,设定其初始频率、扫频率、持续时间和采样率等参数;其次,利用自定义的frft函数对LFM信号进行分数阶傅里叶变换;接着,使用MATLAB的可视化工具(如plot或imagesc)展示原始信号的时域和频域表示,以及FRFT后的结果,以便直观对比;最后,通过计算均方误差、峰值信噪比等指标来评估FRFT的性能。深入理解FRFT的数学原理并结合MATLAB编程技巧,可以实现对LFM信号的有效分析和处理。这个代码示例不仅展示了理论知识在
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值