前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JSP总结四(EL表达式)

JSP总结四(EL表达式)

作者头像
爱撒谎的男孩
发布2019-12-31 14:45:26
5990
发布2019-12-31 14:45:26
举报
文章被收录于专栏:码猿技术专栏码猿技术专栏

文章目录

  1. 1. JSP总结四(EL表达式)
    1. 1.1. 简介
    2. 1.2. 隐含对象
      1. 1.2.1. 与属性相关的隐含对象
      2. 1.2.2. 与请求参数相关的隐含对象(param,paramValues)
      3. 1.2.3. 与标头(Header)相关的隐含对象
      4. 1.2.4. cookie隐含对象
      5. 1.2.5. 初始参数隐含对象
    3. 1.3. EL运算符
      1. 1.3.1. 算术运算符
      2. 1.3.2. 逻辑运算符
      3. 1.3.3. 关系运算符

JSP总结四(EL表达式)

简介

JSP页面尽量不要使用scriptlet编写java代码,因此我们可以使用EL表达式可以替代Java语句的使用

隐含对象

与属性相关的隐含对象

属性的隐含对象有PageScope,requestScope,sessionScope,applicationScope分别对应的是JSP中的PageContext,request,session,application,因此可以取得JSP对象使用setAttribute()设置的属性,如果没有使用EL隐含对象获取属性的值,那么默认是从PageScope开始寻找

代码语言:javascript
复制
<%
    request.setAttribute("login",'true');   //绑定request对象的属性
    session.setAttribute("login",'true');   //绑定session对象的属性
    application.setAttribute("login","true");  //设置application对象的属性
%>

<%--获取request绑定的属性值  相当于request.getAttribute("login");--%>
<h1>${requestScope.login}<h1>

<%--获取session绑定的属性值--%>
<h1>${sessionScope.login}<h1>

与请求参数相关的隐含对象(param,paramValues)

与请求参数相关的EL隐含对象有param,paramValues。我们可以使用EL表达式可以获取表单提交的请求参数。 下面我们使用表单提交,测试一下 JSP代码(表单提交)

代码语言:javascript
复制
<form action="demo1.jsp" method="get">
    姓名:<input type="text" name="username">
    密码:<input type="password" name="password">
    <input type="submit" value="提交">
    
    爱好:
    打棒球:<input type="checkbox" name="hobbies">
    打羽毛球:<input type="checkbox" name="hobbies">
    
</form>

demo1.jsp 文件(接收请求参数)

代码语言:javascript
复制
<%--获取提交的请求参数username,password 
    相当于使用如下代码:
        request.getParameter("username");
        request.getParameter("password");
--%>
<h1>${param.username}</h1>
<h1>${param.password}</h1>


<%--获取多选框的值  相当于使用下面的代码:
    request.getParameterValues("hobbies")[0]
--%>
<h1>${paramValues.hobbies[0]}</h1>
<h1>${paramValues.hobbies[1]}</h1>

与标头(Header)相关的隐含对象

如果想要取得用户请求的表头数据,那么使用header或者headerValues隐含对象。例如使用${header["User-Agent"]} 这个相当于使用<%=request.getHeader("User-Agent")%>HeaderValues对象相当于使用request.getHeaders()

cookie隐含对象

cookie的隐含对象可以取得用户设置的Cookie设置的值。如果在Cookie中设置了username属性,那么可以使用${cookie.username}

初始参数隐含对象

隐含对象initParam可以用来取得web.xml中设置的ServletContext初始参数,也就是在<context-param>中设置的初始参数。例如${initParam.initcount}的作用,相当于<%=ServletContext.getInitParameter("initCount")%>

EL运算符

使用EL运算符直接实现一些算术运算符,逻辑运算符,就如同一般常见的程序语言中的运算

算术运算符

可以直接使用加减乘除 ${1+2},${5/2},${5*3}

逻辑运算符

${true and false}=false,${true and true}=true,${true or false}=true

关系运算符

可以直接在EL表达式比较大小,返回的也是falsetrue,可以用来判断,如下: ${1<2}=false ,${(10*10)>200}=true

代码语言:javascript
复制

<c:if text="${6>5}">
    <c:out value="可以直接使用EL表达式进行比较"></c:out>
</c:if>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-09-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • JSP总结四(EL表达式)
    • 简介
      • 隐含对象
        • 与属性相关的隐含对象
        • 与请求参数相关的隐含对象(param,paramValues)
        • 与标头(Header)相关的隐含对象
        • cookie隐含对象
        • 初始参数隐含对象
      • EL运算符
        • 算术运算符
        • 逻辑运算符
        • 关系运算符
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档