JSP中EL表达式的用法详解(必看篇)

解决JQurey跨域问题$.get|$.post|$.getJSON等等统统可跨域 立即下载

转自:https://www.jb51.net/article/105314.htm

EL 全名为Expression Language

EL 语法很简单,它最大的特点就是使用上很方便。接下来介绍EL主要的语法结构:

${sessionScope.user.sex}

所有EL都是以${为起始、以}为结尾的。上述EL范例的意思是:从Session的范围中,取得

用户的性别。假若依照之前JSP Scriptlet的写法如下:

User user =(User)session.getAttribute("user");

String sex =user.getSex( );

两者相比较之下,可以发现EL 的语法比传统JSP Scriptlet 更为方便、简洁。

EL表达式是配合JSTL使用的。你需要引入JSTL标签库(<c:forEach items=""></c:forEach>,<c:if test=""></c:if>等属于jstl表达式)

<%@taglib uri=" jsp标签的命名空间 " prefix="c"%>

.与 [ ] 运算符

EL 提供 . 和 [ ] 两种运算符来导航数据。下列两者所代表的意思是一样的:

${sessionScope.user.sex}等于${sessionScope.user["sex"]}

. 和 [ ] 也可以同时混合使用,如下:

${sessionScope.shoppingCart[0].price}

回传结果为shoppingCart中第一项物品的价格。

不过,以下两种情况,两者会有差异:

(1) 当要存取的属性名称中包含一些特殊字符,如. 或 – 等并非字母或数字的符号,就一定要使用 [ ],

例如:${user.My-Name }

上述是不正确的方式,应当改为:${user["My-Name"] }

(2) 我们来考虑下列情况:

${sessionScope.user[data]}

此时,data 是一个变量,假若data的值为"sex"时,那上述的例子等于${sessionScope.user.sex};

假若data 的值为"name"时,它就等于${sessionScope.user.name}。

因此,如果要动态取值时,就可以用上述的方法来做,但无法做到动态取值。

EL 变量

EL 存取变量数据的方法很简单,例如:${username}。它的意思是取出某一范围中名称为username的变量。

因为我们并没有指定哪一个范围的username,所以它的默认值会先从Page 范围找,假如找不到,

再依序到Request、Session、Application范围。假如途中找到username,就直接回传,不再继续找下去,

但是假如全部的范围都没有找到时,就回传null,当然EL表达式还会做出优化,页面上显示空白,而不是打印输出NULL。

属性范围(jstl名称)

EL中的名称

Page

PageScope

Request

RequestScope

Session

SessionScope

Application

ApplicationScope

我们也可以指定要取出哪一个范围的变量:

范例

说明

${pageScope.username}

取出Page范围的username变量

${requestScope.username}

取出Request范围的username变量

${sessionScope.username}

取出Session范围的username变量

${applicationScope.username}

取出Application范围的username变量

其中,pageScope、requestScope、sessionScope和applicationScope都是EL 的隐含对象,

由它们的名称可以很容易猜出它们所代表的意思,

例如:${sessionScope.username}是取出Session范围的username 变量。这种写法是不是比之前JSP 的写法:

String username =(String) session.getAttribute("username");容易、简洁许多.

自动转变类型

EL 除了提供方便存取变量的语法之外,它另外一个方便的功能就是:自动转变类型,我们来看下面这个范例:

${param.count + 20}

假若窗体传来count的值为10时,那么上面的结果为30。之前没接触过JSP 的读者可能会认为上面的例子是理所当然的,

但是在JSP 1.2 之中不能这样做,原因是从窗体所传来的值,它们的类型一律是String,所以当你接收之后,必须再将它转为其他类型,

如:int、float 等等,然后才能执行一些数学运算,下面是之前的做法:

String str_count =request.getParameter("count");

int count =Integer.parseInt(str_count);

count = count + 20;
所以,注意不要和java的语法(当字符串和数字用“+”链接时会把数字转换为字符串)搞混淆喽。

EL 隐含对象

JSP有9个隐含对象,而EL也有自己的隐含对象。EL隐含对象总共有11 个

隐含对象

类型

说明

PageContext

javax.servlet.ServletContext

表示此JSP的PageContext

PageScope

java.util.Map

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

RequestScope

java.util.Map

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

sessionScope

java.util.Map

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

applicationScope

java.util.Map

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

param

java.util.Map

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

paramValues

java.util.Map

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

header

java.util.Map

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

headerValues

java.util.Map

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

cookie

java.util.Map

如同HttpServletRequest.getCookies()

initParam

java.util.Map

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

不过有一点要注意的是如果你要用EL输出一个常量的话,字符串要加双引号,不然的话EL会默认把你认为的常量当做一个变量来处理,

这时如果这个变量在4个声明范围不存在的话会输出空,如果存在则输出该变量的值。

属性(Attribute)与范围(Scope)

与范围有关的EL 隐含对象包含以下四个:pageScope、requestScope、sessionScope 和

applicationScope,它们基本上就和JSP的pageContext、request、session和application一样,所以笔者在这里只稍略说明。

不过必须注意的是,这四个隐含对象只能用来取得范围属性值,即JSP中的getAttribute(String name),却不能取得其他相关信息,

例如:JSP中的request对象除可以存取属性之外,还可以取得用户的请求参数或表头信息等等。

但是在EL中,它就只能单纯用来取得对应范围的属性值,

例如:我们要在session 中储存一个属性,它的名称为username,在JSP 中使用session.getAttribute("username")来取得username 的值,

但是在EL中,则是使用${sessionScope.username}来取得其值的。

cookie

所谓的cookie是一个小小的文本文件,它是以key、value的方式将Session Tracking的内容记录在这个文本文件内,这个文本文件通常存在于浏览器的暂存区内。

JSTL并没有提供设定cookie的动作,因为这个动作通常都是后端开发者必须去做的事情,而不是交给前端的开发者。

假若我们在cookie 中设定一个名称为userCountry的值,那么可以使用${cookie.userCountry}来取得它。

header 和headerValues

header 储存用户浏览器和服务端用来沟通的数据,当用户要求服务端的网页时,会送出一个记载要求信息的标头文件,例如:用户浏览器的版本、用户计算机所设定的区域等其他相关数据。假若要取得用户浏览器的版本,即${header["User-Agent"]}。另外在鲜少机会下,有可能同一标头名称拥有不同的值,此时必须改为使用headerValues 来取得这些值。

注意:因为User-Agent 中包含“-”这个特殊字符,所以必须使用“[]”,而不能写成

$(header.User-Agent)。

initParam

就像其他属性一样,我们可以自行设定web 站台的环境参数(Context),当我们想取得这些参数initParam就像其他属性一样,

我们可以自行设定web 站台的环境参数(Context),当我们想取得这些参数

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<? xml version = "1.0" encoding = "ISO-8859-1" ?>
 
< web-appxmlns = "http://java.sun.com/xml/ns/j2ee"
 
 
 
version = "2.4" >:
 
< context-param >
 
< param-name >userid</ param-name >
 
< param-value >mike</ param-value >
 
</ context-param >:
 
</ web-app >

那么我们就可以直接使用${initParam.userid}来取得名称为userid,其值为mike 的参数。

下面是之前的做法:String userid =(String)application.getInitParameter("userid");

param和paramValues

在取得用户参数时通常使用一下方法:

request.getParameter(String name)
request.getParameterValues(String name)

在 EL中则可以使用param和paramValues两者来取得数据。
${param.name}
${paramValues.name}

这里param 的功能和request.getParameter(String name)相同,而paramValues和
request.getParameterValues(String name)相同。如果用户填了一个表格,表格名称为username,则我们就可以使用${param.username}来取得用户填入的值。

看到这里,大家应该很明确EL表达式只能通过内置对象取值,也就是只读操作,如果想进行写操作的话就让后台代码去完成,毕竟EL表达式仅仅是视图上的输出标签罢了。

pageContext

我们可以使用 ${pageContext}来取得其他有关用户要求或页面的详细信息。下表列出了几个比较常用的部分

Expression

说明

${pageContext.request.queryString}

取得请求的参数字符串

${pageContext.request.requestURL}

取得请求的URL,但不包括请求之参数字符串,即servlet的HTTP地址。

${pageContext.request.contextPath}

服务的webapplication的名称

${pageContext.request.method}

取得HTTP的方法(GET、POST)

${pageContext.request.protocol}

取得使用的协议(HTTP/1.1、HTTP/1.0)

${pageContext.request.remoteUser}

取得用户名称

${pageContext.request.remoteAddr}

取得用户的IP地址

${pageContext.session.new}

判断session是否为新的,所谓新的session,表示刚由server产生而client尚未使用

${pageContext.session.id}

取得session的ID

${pageContext.servletContext.serverInfo}

取得主机端的服务信息

这个对象可有效地改善代码的硬编码问题,如页面中有一A标签链接访问一个SERVLET,如果写死了该SERVLET的HTTP地址

那么如果当该SERVLET的SERVLET-MAPPING改变的时候必须要修改源代码,这样维护性会大打折扣。

EL算术运算

表达式语言支持的算术运算符和逻辑运算符非常多,所有在Java语言里支持的算术运算符,表达式语言都可以使用;

甚至Java语言不支持的一些算术运算符和逻辑运算符,表达式语言也支持。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<%@ page contentType="text/html; charset=gb2312"%>
< html >
< head >
< title >表达式语言 - 算术运算符</ title >
</ head >
< body >
< h2 >表达式语言 - 算术运算符</ h2 >
< hr >
< table border = "1" bgcolor = "aaaadd" >
< tr >
< td >< b >表达式语言</ b ></ td >
< td >< b >计算结果</ b ></ td >
</ tr >
<!-- 直接输出常量 -->
< tr >
< td >\${1}</ td >
< td >${1}</ td >
</ tr >
<!-- 计算加法 -->
< tr >
< td >\${1.2 + 2.3}</ td >
< td >${1.2 + 2.3}</ td >
</ tr >
<!-- 计算加法 -->
< tr >
< td >\${1.2E4 + 1.4}</ td >
< td >${1.2E4 + 1.4}</ td >
</ tr >
<!-- 计算减法 -->
< tr >
< td >\${-4 - 2}</ td >
< td >${-4 - 2}</ td >
</ tr >
<!-- 计算乘法 -->
< tr >
< td >\${21 * 2}</ td >
< td >${21 * 2}</ td >
</ tr >
<!-- 计算除法 -->
< tr >
< td >\${3/4}</ td >
< td >${3/4}</ td >
</ tr >
<!-- 计算除法 -->
< tr >
< td >\${3 div 4}</ td >
< td >${3 div 4}</ td >
</ tr >
<!-- 计算除法 -->
< tr >
< td >\${3/0}</ td >
< td >${3/0}</ td >
</ tr >
<!-- 计算求余 -->
< tr >
< td >\${10%4}</ td >
< td >${10%4}</ td >
</ tr >
<!-- 计算求余 -->
< tr >
< td >\${10 mod 4}</ td >
< td >${10 mod 4}</ td >
</ tr >
<!-- 计算三目运算符 -->
< tr >
< td >\${(1==2) ? 3 : 4}</ td >
< td >${(1==2) ? 3 : 4}</ td >
</ tr >
</ table >
</ body >
</ html >
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<%@ page contentType="text/html; charset=gb2312"%>
< html >
< head >
< title >表达式语言 - 算术运算符</ title >
</ head >
< body >
< h2 >表达式语言 - 算术运算符</ h2 >
< hr >
< table border = "1" bgcolor = "aaaadd" >
< tr >
< td >< b >表达式语言</ b ></ td >
< td >< b >计算结果</ b ></ td >
</ tr >
<!-- 直接输出常量 -->
< tr >
< td >\${1}</ td >
< td >${1}</ td >
</ tr >
<!-- 计算加法 -->
< tr >
< td >\${1.2 + 2.3}</ td >
< td >${1.2 + 2.3}</ td >
</ tr >
<!-- 计算加法 -->
< tr >
< td >\${1.2E4 + 1.4}</ td >
< td >${1.2E4 + 1.4}</ td >
</ tr >
<!-- 计算减法 -->
< tr >
< td >\${-4 - 2}</ td >
< td >${-4 - 2}</ td >
</ tr >
<!-- 计算乘法 -->
< tr >
< td >\${21 * 2}</ td >
< td >${21 * 2}</ td >
</ tr >
<!-- 计算除法 -->
< tr >
< td >\${3/4}</ td >
< td >${3/4}</ td >
</ tr >
<!-- 计算除法 -->
< tr >
< td >\${3 div 4}</ td >
< td >${3 div 4}</ td >
</ tr >
<!-- 计算除法 -->
< tr >
< td >\${3/0}</ td >
< td >${3/0}</ td >
</ tr >
<!-- 计算求余 -->
< tr >
< td >\${10%4}</ td >
< td >${10%4}</ td >
</ tr >
<!-- 计算求余 -->
< tr >
< td >\${10 mod 4}</ td >
< td >${10 mod 4}</ td >
</ tr >
<!-- 计算三目运算符 -->
< tr >
< td >\${(1==2) ? 3 : 4}</ td >
< td >${(1==2) ? 3 : 4}</ td >
</ tr >
</ table >
</ body >
</ html >

上面页面中示范了表达式语言所支持的加、减、乘、除、求余等算术运算符的功能,读者可能也发现了表达式语言还支持div、mod等运算符。

而且表达式语言把所有数值都当成浮点数处理,所以3/0的实质是3.0/0.0,得到结果应该是Infinity。

如果需要在支持表达式语言的页面中正常输出“$”符号,则在“$”符号前加转义字符“\”,否则系统以为“$”是表达式语言的特殊标记。

EL关系运算符

关系运算符

说明

范例

结果

== 或 eq

等于

${5==5}或${5eq5}

true

!= 或 ne

不等于

${5!=5}或${5ne5}

false

< 或 lt

小于

${3<5}或${3lt5}

true

> 或 gt

大于

${3>5}或{3gt5}

false

<= 或 le

小于等于

${3<=5}或${3le5}

true

>= 或 ge

大于等于

5}或${3ge5}

false

表达式语言不仅可在数字与数字之间比较,还可在字符与字符之间比较,字符串的比较是根据其对应UNICODE值来比较大小的。

注意:在使用EL 关系运算符时,不能够写成:

${param.password1} = =${param.password2}

或者
${ ${param.password1 } = = ${param.password2 } }

而应写成

${ param.password1 = =param.password2 }

EL逻辑运算符

逻辑运算符

范例

结果

&&或and

交集${A && B}或${A and B}

true/false

||或or

并集${A || B}或${A or B}

true/false

!或not

非${! A }或${not A}

true/false

Empty 运算符

Empty 运算符主要用来判断值是否为空(NULL,空字符串,空集合)。

条件运算符

${ A ? B : C}


从封装到先进封装:一文讲透Chiplet、2.5D/3D堆叠与系统集成 封装是芯片产业链中连接硅片与电路板的桥梁,承担物理保护、电气连接、散热与机械支撑等核心任务。传统封装从DIP、QFP发展到BGA,通过提升引脚密度满足早期性能需求。随着摩尔定律放缓,单纯缩小晶体管尺寸难以为继,先进封装应运而生,其核心理念从“封装单颗芯片”转向“系统级高密度集成”。扇出型封装、2.5D硅中介层、3D堆叠、Chiplet和系统级封装等技术,通过微米级互连和垂直堆叠,大幅提升I/O密度与带宽,成为AI芯片、HBM存储、高性能计算等领域的关键支撑。本文梳理先进封装的技术演进、分层架构与工程难点,帮 阅读详情

相关推荐

cpp中auto, auto &和const auto &的区别

笔者初学cpp,如有纰漏,请见谅并指正。 用在哪 auto用于推断类型,具体可用于声明变量时根据初始化表达式自动推断该变量的类型,也就是可用在for循环。 也可以用于声明函数返回值的占位符。 怎么用 这里主要讲for循环中三者的区别 直接说结论 auto auto用于copy一份集合中的数据,对于这种情况,在循环体中不论怎么修改copy的数据,是不会影响到原有集合中的数据的。 举个简单的例子 int arr[5] = {0, 1, 2, 3, 4}; cout << "使用auto" <&

NinoSun的博客 3175

EL表达式详解教程

EL 全名为Expression Language EL 语法很简单,它最大的特点就是使用上很方便。接下来介绍EL主要的语法结构: ${sessionScope.user.sex} 所有EL都是以${为起始、以}为结尾的。上述EL范例的意思是:从Session的范围中,取得 用户的性别。假若依照之前JSP Scriptlet的写法如下: User user =(User)session.

Imust_can的专栏 1万+

ns3-gym入门(二):linear-mesh例子详解

学习ns3-gym中关于IEEE 802.11网状网络中控制随机接入的例子linear-mesh

zoe2222226666的博客 1841

EL表达式

EL,Expression Language,是表达式语言。 使用jsp页面虽然能进行数据输出,但过于麻烦,而使用EL表达式在输出数据时会更简洁。

qq_39579087的博客 583

Vivado 2018.3实战:用IDELAYE3和ISERDESE3搞定高速ADC数据采集(附仿真源码)

本文详细介绍了在Vivado 2018.3中使用Xilinx UltraScale架构的IDELAYE3和ISERDESE3原语实现高速ADC数据采集的实战方法。通过分析5GHz采样系统的时序挑战,提供从PCB布局到Vivado实现的完整解决方案,包括精密时序校准、多相位数据重组及系统级调试技巧,并附赠仿真源码助力工程师快速掌握高速数据采集技术。

weixin_30567225的博客 582

从零完成 STM32 + ESP-01S + 云服务器 TCP 通信测试

STM32 通过 USART3 控制 ESP-01S 接入手机 2.4 GHz 热点,随后连接公网云服务器 8.152.204.86:9002。云端在同一 TCP 连接中连续收到 seq=1~6 的测试报文,5 个发送间隔平均约 5.4 秒,说明本次 TCP 上行链路已经打通。

weixin_51387720的博客 307

工作流-自定义命令解析EL表达式

工作期间,有时候需要预先知道流程模型配置的EL表达式的结果,例如分配用户的地方,使用了EL表达式获取,那么在加签或减签时,需要提前知道他的最终值,以此来判断人员信息。

蓝天⊙白云的博客 1160

保姆级教程:用U盘给浪潮服务器装系统(含RAID驱动加载技巧)

本文提供了一份详细的浪潮服务器U盘安装系统指南,重点介绍了RAID驱动加载技巧与实战步骤。从准备工作到系统安装全流程,涵盖RAID配置、驱动加载方法及常见问题排查,帮助用户高效完成服务器系统部署。特别强调RAID驱动与服务器型号的匹配性,确保安装过程顺利。

uuu88的博客 734

jsp 中${ } 是什么意思?

jsp标签中的 ${表达式}用来输出或者计bai算一个表达式的内容:它的目的是baidu获得zhi{}中那dao些指定的对象的zhuan值,比如参数或者对象的值。 比如3+5,那么便会在页面上输出8在比如{3+5},那么便会在页面上输出8在比如3+5,那么便会在页面上输出8在比如{sessionScope.username},那么便会获取Session里面的username的值,它不能在代码块也就是<% %>里使用。 例子 ${user.name}<====>User user =

weixin_43484977的博客 4827

【学习系列】SAP RAP 17:RAP应用部署集成至Fiori Launchpad 【S4HC Public Edition】

本文详细介绍了在SAP S/4HANA Cloud环境中部署RAP应用集成到Fiori Launchpad的两种方法:使用BAS(SAP Business Application Studio)和VSCode。主要步骤包括:1)在BTP中配置Destination连接ES环境;2)设置信任关系;3)创建BAS开发空间;4)通过Fiori应用生成器部署RAP应用;5)创建IAM App、Business Catalog和Business Role;6)配置Launchpad Space和Pages。文章还提供

DeveloperMrMeng的博客 959

【华为机试真题 Python实现】分苹果

《华为机试真题》专栏含牛客网华为专栏、华为面经试题、华为OD机试真题。如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您解答,也可以给您一些建议!本文解法非最优解(即非性能最优)。A,B两个人把苹果分为两堆,A希望按照它的计算规则等分苹果,他的计算规则是按照二进制加法计算,并且不计算走位,12+5=9(1100+0101=9), B的计算规则是十进制加法,包括正常进位,B希望在满足A的情况下获取苹果重量最多,输入苹果的数量和每个苹果重量,输出满足A的情况下获取的苹果总重量, 如果无法满足A的要

3412

el jsp 表达式 默认值_JSP中EL表达式的用法详解(必看篇)

EL 全名为Expression LanguageEL 语法很简单,它最大的特点就是使用上很方便。接下来介绍EL主要的语法结构:${sessionScope.user.sex}所有EL都是以${为起始、以}为结尾的。上述EL范例的意思是:从Session的范围中,取得用户的性别。假若依照之前JSP Scriptlet的写法如下:User user =(User)session.getAttribu...

weixin_28731223的博客 398

【Zephyr电源与功耗专题】13_PMU电源驱动介绍

本文介绍的PMU芯片包含2路DCDC和6路LDO,在Zephyr实时操作系统下实现了完整的电源管理解决方案。

zero的博客 842

el表达式ne什么意思_JSP中EL表达式的用法详解(必看篇)

EL 全名为Expression LanguageEL 语法很简单,它最大的特点就是使用上很方便。接下来介绍EL主要的语法结构:${sessionScope.user.sex}所有EL都是以${为起始、以}为结尾的。上述EL范例的意思是:从Session的范围中,取得用户的性别。假若依照之前JSP Scriptlet的写法如下:User user =(User)session.getAttribu...

weixin_29313423的博客 1401

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

JSP的EL表达式的使用详解,超详细(一文看懂el)

JSP的EL表达式的使用详解 一、什么是EL表达式 1.EL表达式的简介 EL表达式百度百科 全称(Expression language)表达语言 El表达式提供了获取对象以及属性的简单方法 2.对比JSP写法和EL表达式写法 JSP写法:<%=session.getAttribute("name")%> El表达式写法:${sessionScope.name} 注意点: El表达式写在JSP的HTML代码块中,而不能写在<%%>之间 二、EL表达式的基本语法 1.EL表

qq_48033003的博客 2万+

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

EL表达式常见用法详解

1.EL表达式的简介 EL表达式是一种JSP技术,能够代替JSP中原本要用Java语言进行显示的语句,使得代码更容易编写与维护。最基本的语法是${express}。 2.获取并显示数据 1)从四个域中通过key找到简单数据并显示出来。表达式代码:${name} -->四个域的寻找顺序是 page,request,session,application。用EL表达式还有个好处,若找

LiQiyao的博客 4万+

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

JSP中的EL表达式

目录 一、EL表达式简介 二、EL表达式获取数据 1.EL 表达式搜索域数据的顺序 2.EL表达式获取JavaBean的数据 2.1 JavaBean规范 2.2 获取JavaBean中不同类型的数据 三、EL的11个隐含对象 1.pageContext的使用 2.获取四个特定域中的属性 3.其他隐含对象的使用 四、EL中的运算符 1.关系运算 2.逻辑运算 3.算数运算 4.empty运算 5.三元运算符 6."."点运算和[]中括号运算符 一、EL表达式简介 EL

风继续吹 9719

JSP,EL,JSTL详解

一、JSP1.介绍2.JSP本质二、EL三、JSTL 一、JSP 1.介绍 JSP:Java Server Page,是SUN公司提高的动态网页编程技术,是Java Web服务器端的动态资源 JSP允许在页面嵌入Java代码,可以动态展示页面。 我们来想一下,为什么要有JSP这个技术? 我们之前学过了Servlet,可以在里面写Java代码也可以写Java代码,但是你会发现我们如果只是单纯用Servlet写代码的话,代码太杂乱了,不容易维护,既有Java代码,又有前端代码,JSP的出现就是为了帮助我们解决.

梦想也许遥不可及,但重要的是追梦的过程,用博客记录自己的成长,记录自己一步一步向上攀登的印记 3710

jsp中的EL表达式用法

1 EL 1.1 EL表达式 1.1.1EL表达式概述 基本概念 EL表达式,全称是Expression Language。意为表达式语言。它是Servlet规范中的一部分,是JSP2.0规范加入的内容。其作用是用于在JSP页面中获取数据,从而让我们的JSP脱离java代码块和JSP表达式。 基本语法 EL表达式的语法格式非常简单,写为 ${表达式内容} 例如:在浏览器中输出请求域中名称为message的内容。 假定,我们在请求域中存入了一个名称为message的数据(request.setAttribut

weixin_45417754的博客 5692

jsp——EL表达式

1. 什么是EL表达式,有什么作用。 EL表达式全称:Expression Language ,是表达式语言。 EL表达式的作用:EL表达式主要是代替jsp页面中的表达式脚本在jsp页面中进行数据的输出。因为EL表达式在输出数据的时候,要比jsp的表达式简洁很多。 <%-- Created by IntelliJ IDEA. User: Administrator Date: 2021/12/13 Time: 20:03 To chang...

PengK_aha的博客 3132

JSP 中EL表达式用法详解

EL 全名为Expression Language EL 语法很简单,它最大的特点就是使用上很方便。接下来介绍EL主要的语法结构: ${sessionScope.user.sex} 所有EL都是以${为起始、以}为结尾的。上述EL范例的意思是:从Session的范围中,取得 用户的性别。假若依照之前JSP Scriptlet的写法如下: User user =(Use

咸的蛋疼的博客 2万+

JSP使用EL表达式

一、数据库数据类型 1、整数类型 (1).TINYINT(tinyint):大小为1个字节,有符号范围(-128 to 127)、无符号范围(0 to 255)mySQL没有布尔类型,直接使用tinyint表示。 (2)、SMALLINT(smallint):大小为2个字节,有符号范围(-32768 to 32767)、无符号范围(0 to 65535)。 (3)、MEDIUMINT(mediumint):大小为3个字节,有符号范围(-8388608 to 8388607 )、无符号范围(0 to 1677

Pzz_Lite的博客 3415

EL表达式改进JSP

由于篇幅限制,pdf文档的详解资料太全面,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!点击【学习资料】即可获取!由于篇幅限制,pdf文档的详解资料太全面,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!点击【学习资料】即可获取![外链图片转存中…(img-EnI6tJRc-1711660401268)][外链图片转存中…(img-NcMrwDOz-1711660401268)]点击【学习资料】

2401_83641098的博客 695

jsp的EL表达式详解

文章目录一、什么是EL表达式,有什么用二、用法2.1 最简单的使用2.2. EL表达式搜索域数据的顺序2.3. EL表达式输出复杂的Bean对象2.4. EL表达式的关系运算2.5. EL表达式的逻辑运算2.6. EL表达式的算术运算2.7. empty运算2.8. EL表达式的三元运算2.9. EL表达式的11个隐含对象2.10. EL表达式pageContext对象的作用 一、什么是EL表达式,有什么用 EL表达式全称:Expression Language。是表达式语言。 作用:主要用来替代jsp页面

越努力越幸运的博客 1829
上一篇: (灰常重要)jsp九大内置对象整理总结和EL表达式内置对象
下一篇: 【springmvc】@RequestParam详解以及加与不加的区别
周末去看海
博客等级 码龄9年 50粉丝 5原创
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值