JavaWeb:EL表达式

JavaWeb:EL表达式



EL表达式
说明
  1.Expression Language语言,一种用于JSP文件中的数据访问的语言。
  2.能够简化JSP文件中该数据访问的代码,可用来替代传统的基于<%= %>和部分<% %>的程序片段。
  3.EL表达式使得JSP文件的创建人员能够用更加简单的语法来访问数据。
  4.基本形式为: ${var}

EL运算符 (来自孤傲苍狼)

  1、关系运算符  

  

  2、逻辑运算符:

  

  3、empty运算符:检查对象是否为null(空)

  4、二元表达式:${user!=null?user.name :""}

隐含对象

  EL语言中定义了11个隐含对象,它们都是java.util.Map类型,网页制作者可以方便来快捷地访问Web应用中的特定数据。

     
序号 隐含对象名称 描       述
1 pageContext 对应于JSP页面中的pageContext对象(注意:取的是pageContext对象。)
2 pageScope 代表page域中用于保存属性的Map对象
3 requestScope 代表request域中用于保存属性的Map对象
4 sessionScope 代表session域中用于保存属性的Map对象
5 applicationScope 代表application域中用于保存属性的Map对象
6 param 表示一个保存了所有请求参数的Map对象
7 paramValues 表示一个保存了所有请求参数的Map对象,它对于某个请求参数,返回的是一个string[]
8 header 表示一个保存了所有http请求头字段的Map对象,注意:如果头里面有“-” ,例Accept-Encoding,则要header[“Accept-Encoding”]
9 headerValues 表示一个保存了所有http请求头字段的Map对象,它对于某个请求参数,返回的是一个string[]数组。注意:如果头里面有“-” ,例Accept-Encoding,则要headerValues[“Accept-Encoding”]
10 cookie 表示一个保存了所有cookie的Map对象
11 initParam 表示一个保存了所有web应用初始化参数的map对象

  说明
  这11个隐含对象可以分为4种类型:
  → 表示HTTP请求中的特定数据:
    ? ${header["user-agent"] } <=? <%=request.getHeader("user-agent")%>
    ? ${header.host} <=? <%=request.getHeader("host")%>
    ? ${cookie.username.value}<=? 调用名为username的Cookie对象的getValue()方法
    ? ${param.username}<=? <%=request.getParam("username")%>
  → 表示特定范围
    ? ${sessionScope.cart.total}<=? 等价与 调用会话范围内的属性名为 cart的ShoppingCart对象的getTotal()方法
    ? ${applicationScope.counter.count} <=? 等价与 调用Web范围内的属性名为counter的CounterBean对象的getCount()方法
  → 表示PageContext对象
    ? ${pageContext.servletContext.serverInfo} <=? 等价与 <%=application.getServerInfo()%>
    ? ${pageContext.request.requestURL}<=? 等价与 <%=request.getRequestURL()%>
    ? ${pageContext.response.characterEncoding} <===>等价与 <%=response.getCharacterEncoding()%>
    ? ${pageContext.session.creationTime} <===>等价与 <%=session.getCreationTime()%>
  → 表示Web应用的初始化参数集合
    ? ${initParam.driver} <===>等价与 <%=application.getInitParamter("driver")%>

说明:

  属性的访问中,可以用 . 或者[]来访问对象的属性及数组的元素,对于属性中有 - 或 空格 等特殊字符的只能用[]。

命名变量

  说明:

    命名变量不是局部变量或者实例变量,它是存放在特定范围内的属性,命名变量的名字和属性名字对应。
    如果范围内不存在username属性,那么不会打印任何结果。
    
  创建
    命名变量的创建就是创建属性,如下:
    <%
      
pageContext.setAttribute("username","fuck");
    %>

时间: 2024-10-25 20:11:02

JavaWeb:EL表达式的相关文章

Javaweb学习笔记6—EL表达式与JSTL及自定义标签

 前几天博客被黑了,导致博客登陆不上,把前几天应该发的东西的东西重新发一遍 今天来讲javaweb的第六阶段学习. EL表达式与JSTL及自定义标签是对上篇文章介绍的JSP的扩展,不能说是很重要的东西,但是也要了解. 老规矩,首先先用一张思维导图来展现今天的博客内容. ps:我的思维是用的xMind画的,如果你对我的思维导图感兴趣并且想看到你们跟详细的备注信息,请点击下载 另外:如果图看不清的话请右击---在新窗口中打开会清楚很多. 一.EL表达式 1,EL简介 Expression Lan

JavaWeb基础—EL表达式与JSTL标签库

EL表达式: EL 全名为Expression Language.EL主要作用 获取数据(访问对象,访问数据,遍历集合等) 执行运算 获取JavaWeb常用对象 调用Java方法(EL函数库) 给出一个小案例: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ page import="com.jiangbei.domain

JAVAWEB开发之Session的追踪创建和销毁、JSP详解(指令,标签,内置对象,动作即转发和包含)、JavaBean及内省技术以及EL表达式获取内容的使用

Session的追踪技术 已知Session是利用cookie机制的服务器端技术,当客户端第一次访问资源时 如果调用request.getSession() 就会在服务器端创建一个由浏览器独享的session空间,并分配一个唯一且名称为JSESSIONID的cookie发送到浏览器端,如果浏览器没有禁用cookie的话,当浏览器再次访问项目中的Servlet程序时会将JSESSIONID带着,这时JSESSIONID就像唯一的一把钥匙  开启服务器端对应的session空间,进而获取到sessi

javaweb学习总结(二十九)——EL表达式

一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数据.(某个web域 中的对象,访问javabean的属性.访问list集合.访问map集合.访问数组) 2.执行运算 利用EL表达式可以在JSP页面中执行一些基本的关系运算.逻辑运算和算术运算,以在JSP页面中完成一些简单的逻辑运算.${user==null} 3.获取web开发常用对象 EL 表达

javaWEB与EL表达式

EL表达式 1. EL是JSP内置的表达式语言!  * jsp2.0开始,不让再使用java脚本,而是使用el表达式和动态标签来替代java脚本!  * EL替代的是<%= ... %>,也就是说,EL只能做输出! 2. EL表达式来读取四大域  * ${xxx},全域查找名为xxx的属性,如果不存在,输出空字符串,而不是null.  * ${pageScope.xxx}.${requestScope.xxx}.${sessionScope.xxx}.${applicationScope.xx

JavaWeb学习之JSP常用标签、EL表达式的运算符、JSTL标签库(6)

1.JSP常用标签 * 只要支持JSP文件,常用标签有可以直接使用 * 格式: jsp:xxxx * jsp:forward ,完成jsp页面的转发 * page属性:转发的地址 <% request.setCharacterEncoding("UTF-8"); %> <jsp:forward page="/index.jsp"> <jsp:param value="张三" name="userName&q

javaweb part6---jstl以及el表达式

jstl / Java标准标签库/和EL表达式配合使用在JSP中取代 Java代码 el表达式运算符号 gt >lt <ge >=le <=eq ==ne !=and &&or ||not !xx.xxx xx["xxx"]xx?xxx:xxx; 标签库 建议前缀core/cxml/x(不在jsp中处理xml文件)fmt/fmtsql/sql(不在jsp中操作数据库)functions/fn <前缀:标签名 属性名=属性值 属性名=属性值&

Javaweb学习笔记——EL表达式

一.前言 EL表达式是什么? 简而言之,可以这样理解,EL表达式全名为:Exprexxsion Language,原先是JSTL 1.0为了方便存取数据而定义的语言,到了JSTL 2.0便正式成为标准之一.EL表达式的引入可以简化jsp页面中的java代码,方便存取数据等优点. EL表达式的作用有: 1.获取数据 EL表达式替换jsp页面中的java代码,可以从各种类型的WEB域对象中检索java对象,获取数据, 2.执行运算 EL表达式支持逻辑运算和算术运算,可在jsp页面进行简单的运算功能,

javaweb回顾第九篇EL表达式

前言:关于EL表示式开发用的非常多,现在我们回顾一下关于如果去操作EL表达式 1:EL表达式语法 所有EL表达式都是由{开始}结束,表达式中用.和[]操作符来访问数据比喻${user.userName}.${user["userName"]}是等效的. 2:几个重要的操作符 算术,逻辑,关系操作符和我们java语法操作的一样. 2.1:Empty操作符 Empty操作是判断一个值是否为null或者"",写法如${!empty user} 2.2:三目运算符 EL表达