龙空技术网

深入学习Java Web(六) :EL表达式详解

数字化转型方案 361

前言:

此时小伙伴们对“el表达式java”大概比较关怀,兄弟们都需要了解一些“el表达式java”的相关文章。那么小编同时在网摘上搜集了一些关于“el表达式java””的相关内容,希望姐妹们能喜欢,姐妹们快快来学习一下吧!

本文转自与博客园一杯凉茶的博客

EL表达式这也是属于JSP范围内的知识,使用EL表达式,能更好的使用JSP中的各种内置对象和作用域,说点闲话,马上要出去实习了,有点恐慌,可能这是马上要出去工作的学生的通病,继续努力把,兵来将挡水来土掩,

一、EL表达式

JSP中可以使用EL表达式,EL表达式是用"${}"括起来的脚本,用来更方便地读取对象,EL表达式写在JSP的HTML代码中,而不能写在"<%%>"引起的JSP脚本中,现在就来了解一下,EL表达式是如何来替代JSP脚本或者JSP行为的。

EL表达式有11个内置对象。

pageScope、requestScope、sessionScope、applicationScope、pageContext、param、paramValues、header、headerValues、cookie、initParam

pageScope、requestScope、sessionScope、applicationScope代表四个作用域对象

pageContext 表示的是JSP中内置对象pageContext,能获取request等其他JSP八大内置对象

param 表示一个请求参数 ${param.username} 等效 request.getParameter("username");

paramValues 表示一组请求参数 ${paramValues.loves} 等效request.getParameterValues("loves"); 提交喜爱这种多选框

header 表示一个请求头 ${header.referer} 等效request.getHeader("referer");

headerValues 表示一组请求头 ${header.cookie} 等效 request.getHeaders("cookie"); 获取的请求头参数中的内容是一组内容,比如cookie就有可以是多个cookie一起传过来

cookie 获得cookie对象

initPatam web项目初始化参数,servletContext.getInitParameter("xxx");

还有一种特殊的用法,直接获取对象变量,

${user.username}

user为User的一个实例对象,并且存放在page作用域中,上面这句代码的意思是,依次从page、request、session、application作用域查找user对象,直到找到为止,底层使用的是pageContext.findAttribute(); 是一样的效果。

实例讲解:

总结:

EL表达式比较简单,使用它的目的是为了减少JSP脚本,尽量不要在HTML中嵌入Java代码,显的很混乱,而在HTML中使用EL表达式,就比较好来获取JSP中各种对象,获取四大作用域中的值,

如果要获取四大作用域中的数据,则可以使用${}、${pageScope.xxx}

如果想要获取请求参数,则使用param或paramValues

如果想要获取请求头中的一些信息,获取想要获取Servlet的一些对象,比如request、session等,可以使用pageContext来获取request对象,然后在获取所需要的信息,或者直接使用header对象来获取头信息

如果想获取web初始化参数,则使用initPatam

el表达式的运算就不讲解了,很简单,基本上能用的都可以用。

最主要的是要记得EL中有哪11个内置对象,知道了他们就知道了EL可以获取哪些信息。

上一篇:深入学习Java Web(五) :JSP详解(四大作用域九大内置对象等)

标签: #el表达式java