前言:
在servlet进行请求处理后,使用域对象作为数据流转的载体,将数据流转给jsp文件,那么怎么在jsp文件中获得作用域中的对象呢?
传统方式:在jsp中使用java脚本段语句。
缺点:(1)需要导包。
(2)需要强转。
(3)获取数据的代码过于麻烦。
使用EL表达式获取情求数据.
EL表达式:
作用:获取作用域对象中的数据(获取的一定是pageContext,erquest,session,application中的的值,其他数据一概不理会。)。
语法:${表达式}
表达式:
request对象:如果是get方式中拼接在问号后的数据则用${request.Parma.键名}
如果是通过setAttribute方式加加进去的数据,则用${request.键名},也可以${[“键名”]},这种方法用于键名中有特殊符号
例子:
可以限定作用域:
复杂一点的例子:
servlet:
jsp:
运行结果:
用[]的方式来代替.
修改servlet:
如果继续用.的方式
运行结果:
如果没有限定查找的作用域,则按照pageContext-->request-->session-->application查找。
EL还能做一些逻辑运算。
${a+b}:其中a,b都会到作用域中去查找。
EL的空值判断:
{empty 键名}