2019-04-24 EL表达式
2019-04-24 本文已影响0人
北街九条狗
EL能够极大的简化我们的开发
EL 全名为 Expression Language,它原本是 JSTL 1.0 为方便存取数据所自定义的语言。当时 EL只能在JSTL标签中使用。到了JSP2.0 之后,EL已经正式纳入成为标准规范之一。
EL 语法很简单,它最大的特点就是使用上很方便。接下来介绍 EL 主要的语法结构
在sevlet中传值
request.getSession().setAttribute("user", userinfo);
jsp中取值
老的取值方法
<p>登录成功 : <%= request.getAttribute("username") %>,
<%= request.getAttribute("password") %>
</p>
<!-- el表达式方法取值 -->
<p>登录成功 : ${ username },${ password }</p>
<!-- object -->
user获取的是域对象中的对象,默认从pageContext,request,session,application中获取,
如果不同域对象中有同名的属性,需要指定前缀requestScope,sessionScope,applicationScope
<p>登录成功 : ${ user.username },${ user.password }</p>
<p>登录成功 : ${ requestScope.user.username },${ requestScope.user.password }</p>
el表达式中取对象变量值的时候,这个变量必须有get方法
如${ user.username },user其实点的是getUsername()方法
超链接转换的时候会上传一个请求,为了区分每个超链接会在地址后用?好凭借一个属性(如id)作为参数
<a href="${ pageContext.request.contextPath }/20190424/test2.jsp?id=9527">GO TEST2</a>
如何取出请求参数
<%= request.getParameter("id") %>
ul写法
${ param.id }