jsp中java表达式的标记符_JSP中的内置标记(JSP动作)和 EL表达式

一、JSP的内置标记(JSP动作)

(一)JSP的内置标记都是以

ba1480f73aace96575b83a9aede4e191.png

一般会用到,,,这三种是配合使用的

示例图:

5685e2e40400ca219822314009594834.png

显示效果:

074dbc01fcc2a15b872bd5838bbc2ff7.png

再示例一个include :

静态包含:

动态包含:

先定义一个要被包含的文件main.jsp:

66173241cddc8076a68830fc590e957c.png

bc9049bce94288ae99502ad6c7bdf992.png

显示效果如下:

1a0b1f5d7e67d7d31367e465f4d037d3.png

:跳转——是服务端跳转——请求转发

图画的有点丑,将就将就

d1c286956cf3d21b56da2bddc3983118.png

3018baeb98902c1a8e5d6ee7c6f1db71.png

4f8bd64a5121f81e85d1cb4850a0a643.png

二、EL表达式

EL——Expreession Language :表达式语言,来自于ognl,ognl是一个开源项目。

简要的意思就是使用一系列的符号来描述一个表达式

示例图:

注释掉path的定义,你会看到下面会报错,由于在JSP中使用了没有定义变量的path,所以会报一个500的内部错误。

如果使用:${ 表达式 },会有什么变化呢,继续看下面

a970d8310a36ca9367bfb33a68d94848.png

显示结果:

2947ed2d976219450311a149938d44d2.png

使用了 ${ 表达式 } :

使用EL表达式的前提是JSP页面的page指令的isELIgnored为false时使用,默认false。如果是使用true,编译器会把${path}原样显示,这里就不截图了,自己试试吧

对了EL表达式不是从页面获取值,而是从几个范围获取,继续看下面。

5d7985b77a79abdd6a291249e3d1dbda.png

显示结果:

c8694507fc7ae00bdc75b3e5493480c9.png

(一)、${ 表达式 } 就称为EL表达式

1.EL表达式是以 “ ${  ”开始 “ } ”结束,其中就是表达式。

2.主要的作用:用于获取内置范围对象的值。

3.EL表达式取值的原理:

首先从最小的范围去取值,如果没有就到更大的范围I去找值,如果还是没有,一直到applicatiion范围去找值,如果还是没有,不会报错,返回空白(什么都没有),如果是查null值,也返回空白。

4.EL表达式中表示范围对象是

JSP内置对象:application、session、request、pageContext。

EL表达式中范围对象:applicationScope。sessionScope、requestScope、pageScope。

EL表达式中表示范围对象示例:

c904fca2ed3ff2f9a361b0bac869ae4a.png

显示结果:

55810cc196cf7c104e6073200bbf0b3d.png

(二)、EL表达式访问符号:

有两种:

1、使用 " . "  例如:${applicationScope.path}

2、使用” [  ] “ 符号   例如:${applicationScope[ " path " ] },注意中括弧里面是要用引号引起来

(三)、EL表达式中的运算符

1.算术运算符

+     :例如:${6+6} 。注意:在EL表达式中的‘+’只有数学运算的功能,没有连接符的功能,它会试着把运算符两边的操作数转换为数值类型,进而进行数学加法运算,最后把结果输出。若出现${'a'+'b'}则会出现异常。

-      :例如:${4-3}

*      :例如:${4*3}

/      : 例如:${9/3}

2.EL关系运算符

关系运算符         说明                   范例                       结果

==或eq               等于    ${5==5}或${5eq5}      true

!=或ne    不等于    ${5!=5}或${5ne5}      false

>或gt    大于      ${3>5}或{3gt5}        false

<=或le   小于等于     ${3<=5}或${3le5}       true

>=或ge    大于等于   ${3>=5}或${3ge5}      false

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

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

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

或者

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

而应写成

${ param.password1 = = param.password2 }

3.逻辑运算符

e0613b2955e67ebed51a54dfa703f704.png

4.Empty运算符

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

5.条件运算符

${ A ? B : C}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值