1、EL式
下記二種類がある。
① ${式} : JSPの出力(レンダリング)時に評価 (JSP2.0から)
② #{式} : タグハンドラにより任意のタイミングで評価 (JSP2.1から)

2、オブジェクトへのアクセス
・オブジェクトへ: ${オブジェクト名}
・オブジェクトのプロパティへ: ${オブジェクト名.プロパティ名} また、${オブジェクト名.プロパティ1.プロパティ2}もできる
・listへ: ${list[インデックス]}
・mapへ: ${map[キー]} 或は ${map.キー}

3、演算子
演算子一覧(※演算子の括弧内は、別名)

分類 演算子 説明
算術 + 加算
- 減算
* 乗算
/ (div) 除算
% (mod) 剰余
比較 == (eq) 等しい
!= (ne) 等しくない
< (lt) 小さい
> (gt) 大きい
<= (le) 以下
>= (ge) 以上
empty nullまたは空文字
論理 && (and) 集合積
|| (or) 集合和
! (not) 否定
2項 a ? b : c 「a」の場合は「b」、「a」以外の場合は「c」

4、暗黙オブジェクト

暗黙オブジェクト 内容 JSP式相当
pageScope ページスコープ ${pageScope.name} <%= pageContext.getAttribute("name") %>
requestScope リクエストスコープ(リクエストアトリビュート) ${requestScope.name} <%= request.getAttribute("name") %>
sessionScope セッションスコープ ${sessionScope.name} <%= session.getAttribute("name") %>
applicationScope アプリケーションスコープ ${applicationScope.name} <%= application.getAttribute("name") %>
pageContext PageContext    
param リクエストパラメーター(URIのクエリー文字列) ${param.name} <%= request.getParameter("name") %>
paramValues リクエストパラメーター(配列で取得) ${paramValues.name[0]} <%= request.getParameterValues("name")[0] %>
header リクエストヘッダー ${header["user-agent"]} <%= request.getHeader("user-agent") %>
headerValues リクエストヘッダー(配列で取得) ${headerValues["user-agent"][0]}  
cookie クッキー ${cookie.key.name}
${cookie.key.value}
<% for (Cookie c : request.getCookies())
{
    if ("key".equals(c.getName())) {
      out.println(c.getName());
      out.print(c.getValue());
      break;
    }
} %>
initParam web.xmlに指定されている初期化パラメーター


<web-app ~>

 <context-param>
  <param-name>name</param-name>
  <param-value>value</param-value>
 </context-param>

</web-app>
${initParam.name} <%= pageContext.getServletContext()
      .getInitParameter("name") %>

5、予約語
EL式の予約語
  and or div eq ge gt lt lt ne true false 
  instanceof mod not null empty

6、EL式をオフする
1)pageディレクティブでオフ
  <%@page isELIgnored="true"%>
2)web.xmlの<jsp-config>で一括で複数のJSP上オフ
  <jsp-config>
    <jsp-property-group>
      <url-pattern/*<url-pattern>
      <el-ignored>true</el-ignored>
    </jsp-property-group>
  </jsp-config>

JSP基本_EL式的更多相关文章

  1. java攻城师之路--复习java web之jsp入门_El表达式_JSTL标签库

    JSP 技术掌握:JSP语法 + EL + JSTL 为什么sun推出 JSP技术 ? Servlet 生成网页比较复杂,本身不支持HTML语法,html代码需要通过response输出流输出,JSP ...

  2. JSP的隐式对象

    JSP支持九个自动定义的变量,江湖人称隐含对象.这九个隐含对象的简介见下表: 参考资料:http://www.runoob.com/jsp/jsp-syntax.html

  3. 复习java web之jsp入门_El表达式_JSTL标签库

    JSP 技术掌握:JSP语法 + EL + JSTL 为什么sun推出 JSP技术 ? Servlet 生成网页比较复杂,本身不支持HTML语法,html代码需要通过response输出流输出,JSP ...

  4. JSP(工作原理,组成部分,指令标签,动作标签,隐式对象)

    目录 JSP JSP 什么是JSP JSP全名为Java Server Pages 中文名叫java服务器页面 它是在传统的网页HTML文件(.htm,.html)中插入Java程序段和JSP标记 后 ...

  5. JSP页面组件

    一.JSP指令 1.page指令 定义:将关于JSP页面一般设置通知给web容器的属性. 语法:<%@ page attribute_list%> 属性:language;extends; ...

  6. JavaWeb---总结(十六)JSP指令

    一.JSP指令简介 JSP指令(directive)是为JSP引擎而设计的,它们并不直接产生任何可见输出,而只是告诉引擎如何处理JSP页面中的其余部分. 在JSP 2.0规范中共定义了三个指令: pa ...

  7. 【转】JSP总结

    day1 JSP 定义:     1)Java Server Page, Java EE 组件,本质上是 Servlet.     2)运行在 Web Container.接收 Http Reques ...

  8. Java Web编程的主要组件技术——JSP

    参考书籍:<J2EE开源编程精要15讲> JSP(Java Server Page)页面由HTML代码和嵌入其中的Java代码组成. 简单的JSP页面如: <html> < ...

  9. JSP的学习(2)——语法知识一

    上一篇<JSP的学习>讲述了JSP的一些基础知识和底层原理,本篇将来学习JSP所需掌握的语法知识等. JSP的语法主要包括以下几个部分的内容: 1)         JSP模板元素 2)  ...

随机推荐

  1. WordPress设置地址的问题

    刚刚安装了一个Wordpress,第一次使用,所以对设置不是很熟悉. 在常规设置那里,有两个地址设置,一个是WordPress 地址(URL),另一个是站点地址(URL),刚开始分不清这两个的区别,所 ...

  2. jQuery的html和css

    jQuery每次返回的都是当前的集合对象: 每个方法用的时候都会把他的元素对象返回,他每次返回的都是最近的那个元素: 1.addclass() 备选元素添加一个类名 2.removeclass() 移 ...

  3. HDOJ 2004 成绩转换

    #include<cstdio> #include<iostream> using namespace std; int main() { int score; while ( ...

  4. win10 专业版 git bash 闪退问题终极解决方案

    问题描述 Win10 64位专业版安装git 2.x之后出现 Git闪退,安装1.x出现bash: /dev/null: No such device or address fatal: open / ...

  5. [UE4]扔枪后捡枪:Get Overlapping Actors

    一.搜索碰撞体是否碰撞到枪,使用Get Overlapping Actors,只搜索Class Filter设置的对象类型.Get Overlapping Actors没有Class Filter参数 ...

  6. BZOJ2560串珠子

    /* 很清新的一道题(相比上一道题) g[S]表示该 S集合中胡乱连的所有方案数, f[S] 表示S集合的答案 那么F[S] 等于G[S]减去不合法的部分方案 不合法的方案就枚举合法的部分就好了 g[ ...

  7. es6基础(4)--字符串扩展

    //字符串扩展 { console.log('a','\u0061'); console.log('s','\u20BB7');//超过了0xffff console.log('s','\u{20BB ...

  8. 解决Mac下idea运行速度慢

    刚入手Mac,发现Mac下使用idea进行调试极其慢,然后发现和本地回环地址有关: 只需稍微修改hosts文件即可: sudo vim /etc/hosts,在localhost后面追加你的电脑名.l ...

  9. VMware扩展Linux根目录磁盘空间(Centos版本)

    1.Centos 关机,选择编辑虚拟机设置,硬盘,在实用工具那里选择“扩展”,指定你需要的存储大小 2.启动客户机操作系统Centos,查看磁盘情况 输入指令 fdisk -l 显示结果如下 Disk ...

  10. c++引用(修改引用的值)

    当我们希望修改某个函数的返回值时,通常我们会返回这个值的引用(因为函数返回值其实是返回那个值得一份拷贝而已,所以想要修改必须使用引用): .h文件 #pragma once #include < ...