1 .EL表达式

[1] 简介

> JSP表达式 <%= %> 用于向页面中输出一个对象。

> 到JSP2.0时,在我们的页面中不允许出现 JSP表达式和 脚本片段。

> 使用EL表达式来代替JSP表达式 ,使用JSTL标签来代替JSP脚本片段。

> EL表达式用来向页面输出内容

getAttribute();//四个域对象都可以使用//作用不是接收请求参数,在使用getAttribute方法之前必须先使用setAttribute()将属性对方法域对象中;返回Object类型!

getParameter()://仅仅是request使用!用于接收请求参数【url,form表单中】;返回值String类型

[2] 基本语法

> ${表达式}

> EL表达式可以从域中获取属性。

- 使用 ${属性名}

- 如果只填写一个属性名,EL表达式会自动做全域查找。

- 所谓的全域查找,就是按照page request session  application四个域范围内分别,找到就返回属性,如果没找到什么都不返还。

- 我们还可以指定去哪个域查找     pageScope     requestScope     sessionScope     applicationScope

- 例子:     查找request中属性      ${requestScope.属性名}     查找session中的属性      ${sessionScope.属性名}

- 注意:EL表达式只能获取域中的属性     EL表达式不能直接调用对象的方法

- 通过EL表达式读取对象的属性时,只需要${对象.属性名}     EL表达式会自动调用对象的对应的getter方法,通过将属性名首字母大写,然后加上个get          注意:只要有属性,就可以一直点下去,也就说对象的属性是对象的话,我们也可以通过对象的属性的属性的方式调用!

- 当读取一些名字比较特殊的属性时,这种特殊值必须要指定域,例如属性名带-:     ${requestScope['属性名']}

[3] 隐含对象

> EL中一共有11个内置对象。

- pageContext      类型 PageContext       它和JSP中pageContext是一个东西      作用 可以获取到JSP中其他的隐含对象      例如:可以获取项目名:       ${pageContext.request.contextPath }

- pageScope      类型:Map<String,Object>      代表:page域中的属性      作用:可以获取到page域中的属性

- requestScope      类型:Map<String,Object>      代表:request域中的属性      作用:可以获取到request域中的属性

- sessionScope      类型:Map<String,Object>      代表:session域中的属性      作用:可以获取到session域中的属性

- applicatScope      类型:Map<String,Object>      代表:application域中的属性      作用:可以获取到application域中的属性

- param      类型: Map<String , String>      代表:用户发送的请求参数      作用:可以获取请求参数      用法: ${param.参数名}

- paramValues      类型:Map<String , String[]>      代表:一个请求参数对应的多个值      用法: ${paramValues.参数名[索引]}

- header      作用:可以获取到用户发送的请求头      类型:Map<String , String>      例如:获取用户的系统信息 ${header['User-Agent']}          ?

- headerValues      类型: Map<String , String[]>      作用:可以获取一个头的多个值        ?

- initParam;      类型:Map<String , String>      作用:获取整个WEB应用的初始化参数        ?

- cookie      类型:Map<String , Cookie>      作用:用来获取Cookie

[4] 运算

> 在EL中可以直接使用运算符进行运算。

> 在EL中可以使用Empty元素符:    如果值为null , empty则返回 true    如果为空串, 则返回 true    空的集合    返回true

> 所以empty元素符经常用来判断集合或者字符串是否为空

170819-关于EL表达式的知识点的更多相关文章

  1. jsp与El,jstl知识点总结归纳

    jsp与El,jstl知识点总结归纳 jsp部分 一.jsp的三大指令 page ,include,taglib 1.jsp中的page指令 <% page %>-设置jsp 例如: &l ...

  2. [烧脑时刻]EL表达式1分钟完事

    一天,程序员A问我,我们比比谁的知识点多,反应快.我回答:那就看谁最快用EL表达式的显示在页面上吧. 话不多说,计时开始. 项目的结构如上,大概就是一个Family的JavaBean,一个jsp页面, ...

  3. 一、jsp和Servlet基础理论及jstl和EL表达式用法

    1.题外话:使用JSP有近一年半的时间了,但是开发量不大.昨天部门突然让做个读取EXCLE文件,然后在前台页面进行展示.并通过点击查看按钮可以对每条明细记录进行跳转后进行详情查看,并按照页面原型进行页 ...

  4. 12 Servlet_04 Servlet增删改查 静态页面与动态页面 EL表达式 table表格的一些样式

    今天学习了servlet的增删改查: 存储数据 setAttribute(String name,Object obj );获取数据 getAttribute(String name);删除数据 re ...

  5. jsp页面无法识别el表达式的解决方案

    今天在写一个springmvc的小demo时,碰到一个问题,在jsp页面中书写为${user.username}的表达式语言,在浏览器页面中仍然显示为${user.username},说明jsp根本不 ...

  6. El表达式的关系运算符

    El表达式的关系运算符: ==  对应  eq !=   对应  ne >    对应  gt <    对应  It

  7. java web学习总结(三十一) -------------------EL表达式

    一.EL表达式简介 EL 全名为Expression Language.EL主要作用: 1.获取数据 EL表达式主要用于替换JSP页面中的脚本表达式,以从各种类型的web域 中检索java对象.获取数 ...

  8. EL表达式的算术运算

    一个例子--乘法运算 ${book.bookCount * book.bookPrice } 两个不同对象的EL表达式的算术运算同理 ${student.studentNum * book.bookP ...

  9. EL表达式杂项

    1.<%@ page isELIgnored="false" %> 是否忽略EL表达式,如果值为ture,那么  ${..}这样的会直接原样输出,不会进行EL表达式计算 ...

随机推荐

  1. 《计算机程式设计》Week3 课堂笔记

    本笔记记录自 Coursera课程 <计算机程式设计> 台湾大学 刘邦锋老师 Week3 Array 3-1 Array Usage 例子:使用数组一次申明10个整数变量 int a[10 ...

  2. 黑群晖DSM 6.x 配置文件grub.cfg修改 mac地址/sn等修改

    新的DSM 6.x配置文件和以前的XPEnoboot的配置文件不一样了,我们可以通过OSFMount虚拟光驱软件打开img后再修改. 安装完成后运行OSFMount点击左下角-Mount new,选择 ...

  3. 关于 阿里云 的linux 安装 jdk和tomcat 中的问题(解压版的jdk和tomcat)

    一安装jdk 1:首先要申请一个服务器 2:其次官网下载jdk(按你的linux版本下载(我的目前是64)) 3:就是上传jdk 4:在 usr 文件夹下创建 java 文件夹 5:把jdk上传到ja ...

  4. ssm项目的创建思路

    ·DAO层: 代码:pojo.映射文件.接口文件——Mybatis逆向工程自动生成 配置:ApplicationContext-dao.xml——数据源.连接池.会话工厂.mapper包扫描 ·Ser ...

  5. Hadoop and Big Data

    Hadoop(1): HDFS Basics Hadoop(2):HDFS Block Management Hadoop(3): Prepare inputs for MapReduce mappe ...

  6. HashMap为什么在多线程下会让cpu100%

    首先HashMap并不是sun公司多线程提供的集合,很多时候我们的程序是一个主线程,用了hashmap并没有什么问题,但是在多线程下会出现问题. hashmap是一个哈希表,存储的数据结构也可以是一个 ...

  7. JavaSE编码试题强化练习3

    1.给20块钱买可乐,每瓶可乐3块钱,喝完之后退瓶子可以换回1块钱,问最多可以喝到多少瓶可乐. public class TestCirculation { public static void ma ...

  8. SpringBoot 使用JPA+MySQL+Thymeleaf 总结 一

    SpringBoot 使用JPA+MySQL+Thymeleaf 总结 一 SpringBoot 使用JPA+MySQL+Thymeleaf 总结 二 pom引用 <?xml version=& ...

  9. Mac下安装配置gradle

    1.下载gradle2.解压3.获得gradle解压后的路径4.修改.bash_profile文件,配置环境变量 vi ~./bash_profile export GRADLE_HOME=/User ...

  10. nested exception is java.lang.NoClassDefFoundError: org/hibernate/validator/resourceloading/ResourceBundleLocator

    原来的hibernate-validator-5.3.0.Final.jar里没有这个接口,换成 hibernate-validator-4.1.0.Final.jar 就好了