EL表达式取值

1.EL表达式的语法格式很简单:

以前编写jsp代码时,如果要获取表单中的用户名,一般使用 <%=request.getParameter("name")%>,这样当然也可以获取到值,但是又把html代码和java代码混到一起,看起来比较乱套。现在使用EL表达式的话就比较简洁了:${param.name}就可以解决了。

注意:${表达式} 表达式部分不需要加引号,如果写成 ${"param.name"} ,那么页面上显示出来的就不是表单中name的值了,而是 "param.name" 这个字符串。表达式与开始符和终结符之间的空格被忽略不计。如果表达式的值为null,那么页面将显示一个空格而不是null。

2.EL的两个运算符   "." 和 "[]"

${param.name} 和 ${param["name"]} 是等价的,但是当要存取的属性名称中包含有一些特殊字符如 "." 或 "-" 等非字母或数字的符号 或者 在使用动态取值时,就一定要使用 "[]" 运算符。

3.EL表达式的取值范围

pageScope、requestScope、sessionScope、applicationScope

如果没有给定参数名的取值范围,系统默认从page范围中查找,找不到则找request,一次类推,都找不到时传回null。

例如,存入一个session范围的值:<% session.setAttribute("u", "hello,EL") %>

那么,传统方式取值:<% session.getAttribute("u") %>。使用EL表达式取值:${sessionScope.u} 或者 ${u}

4.EL表达式可以自动转换类型

传统代码:

1<%
2Stringage=request.getParameter("age");
3intagei=Integer.parseInt(age);
4out.println(age+10);
5%>

使用EL表达式:

1${user.age+10}

5.EL表达式的内置对象

(1)与范围有关的内置对象

pageScope、requestScope、sessionScope、applicationScope

(2)与输入有关的内置对象

param 和 paramValues 用来获取表单中提交的信息。前者返回 String 类型数据,后者返回 String[] 类型的数据。如 ${paramValues.name}。

(3)其他隐含对象

Cookie

header  如:${header["UserAgent"]} 获取浏览器的版本信息

headerValues 

initParam  如:${initParam.DBDriver} 获取web.xml中配置的相关参数

pageContext 如:${pageContext.request.remoteAddr} 获取用户的IP地址

6.特别注意:

通过获得的参数进行比较判断时,要这样比较:${param.name1 == param.name2}

empty 运算符用于判断值是否为 null 或 空 。 ${empty null} ${empty ""}

EL表达式学习的更多相关文章

  1. EL表达式学习笔记

     转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6684424.html  一:EL表达式的用途 1.获取数据:(某个web域 中的对象,访问javabean的 ...

  2. EL表达式学习(一)

    一.初次接触EL表达式: <%@ page language="java" import="java.util.*" pageEncoding=" ...

  3. EL表达式学习(二)

    1.从特定域中获取值: 2.从请求页面的input标签中,获取值:(同servlet中的getParameter和getParameterValues): 3.获取请求头(同servlet中的getH ...

  4. jsp学习---mvc模式介绍和el表达式,jstl标签库的使用入门

    一.mvc模式介绍 下图是常用的mvc分层模式: 项目中的包命名规则,一般如下: com.amos.domain 封装JavaBean,一般我喜欢用model命名这个包com.amos.dao 封装d ...

  5. EL表达式-例子

    <%@page import="java.util.*"%> <%@page import="java.util.ArrayList"%> ...

  6. El 表达式和 Jstl 标签库

    El 表达式学习 1. 什么是 EL 表达式 全称:Expression Language,一种写法非常简介的表达式.语法简单易懂,便于使用.表达式语言的灵感来自于 ECMAScript 和XPath ...

  7. EL表达式详解(常用表达式以及取值)

    EL表达式 学习总结 一. El表达式概念 二. El中的表达式 1. 算术表达式 2. 比较表达式 3. 逻辑表达式 4. 三元表达式 5. 判空表达式 三.EL 从四个作用域中取值 1. 概念 2 ...

  8. java学习笔记—EL表达式(38)

    EL表达式 EL即Expression Language,主要的任务是帮助开发者简化获取域属性. 但是一般情况下需要使用EL和JSTL结合使用. 语法: ${ // 隐含对象|直接写域中的属性 }  ...

  9. Java学习——JSTL标签与EL表达式之间的微妙关系

    原文总结的太好了,忍不住记录.转发. 原文地址:http://blog.csdn.net/u010168160/article/details/49182867 目录(?)[-] 一EL表达式 EL相 ...

随机推荐

  1. 快速构建Windows 8风格应用10-设备方向

    原文:快速构建Windows 8风格应用10-设备方向 本篇博文主要介绍常用支持Windows 8操作系统设备的方向.如何获取当前设备方向.DisplayProperties类. 常用支持Window ...

  2. openwrt驱动与应用程序的联系

    应用程序与驱动之间需要进行命令的传递,因而它们之间需要共同定义一套双方都可以识别的数据结构,实际使用时它们include的是名字和内容相同但位置不同的头文件. 比如spi_gpio_ad7193.h这 ...

  3. js获取编辑框游标的位置

    代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w ...

  4. 零基础学习iOS开发

    零基础学习iOS开发不管你是否涉足过IT领域,只要你对iOS开发感兴趣,都可以阅读此专题. [零基础学习iOS开发][02-C语言]11-函数的声明和定义 摘要: 在上一讲中,简单介绍了函数的定义和使 ...

  5. Wijmo 5 + Ionic Framework之:Hello World!

    Wijmo 5 + Ionic Framework之:Hello World! 本教程中,我们用Wijmo 5 和 Ionic Framework实现一个Mobile的工程:Hello World. ...

  6. Entity Framework 丢失数据链接的绑定,在已绑好的EDMX中提示“Choose Your Data Connection”

    早先做的一个练手的项目中, 使用到了Entity framework . 最近碰到一个问题,在edmx 里面选择“Update model from Database” 的时候提示了 “Choose ...

  7. C#放缩、截取、合并图片并生成高质量新图的类

    原文:C#放缩.截取.合并图片并生成高质量新图的类 using System;using System.Drawing;using System.Drawing.Imaging;using Syste ...

  8. 读书笔记—CLR via C#同步构造28-29章节

    前言 这本书这几年零零散散读过两三遍了,作为经典书籍,应该重复读反复读,既然我现在开始写博了,我也准备把以前觉得经典的好书重读细读一遍,并且将笔记整理到博客中,好记性不如烂笔头,同时也在写的过程中也可 ...

  9. 使用GDB调试器(一)

    使用GDB调试器 GDB概要---- GDB是GNU开源组织公布的一个强大的UNIX下的程序调试工具.也许,各位比較喜欢那种图形界面方式的,像VC.BCB等IDE的调试,但假设你是在UNIX平台下做软 ...

  10. ASP.Net中应用百度编辑器(UEditor)上传图片和上传附件失败-解决方案

    第一步: 第二步: 第三步: 第四步: