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. 修改OBS为仅直播音频

    准备工作: 1. VS2013 的最新更新版或者VS2015 2. QT Creater 5.7   https://www.qt.io/ 3.  CMake (cmake-gui) 4. obs 依 ...

  2. 禅道在docker上部署与迁移

    一.禅道部署 1.下载地址 禅道开源版:   http://dl.cnezsoft.com/zentao/docker/docker_zentao.zip 数据库用户名: root,默认密码: 123 ...

  3. win7运行bat文件 一闪而过 解决 必须要将生成器放在C盘等没有中文的目录里

    1.在*.bat所在的文件夹按住shift 键然后鼠标右键,选择“在此处打开命令窗口”, 2.输入bat文件名称然后回车 这样就不会自动消失(只在win7 x64 上尝试过)

  4. sqlserver基本增删查语句

    use StudentManageDB go insert into Students (StudentName,Gender,Birthday,Age,StudentIdNo ,PhoneNumbe ...

  5. 第2章 GNS3和PacketTracer网络模拟器(3)_搭建Packet tracer实验环境

    3. Packet tracer实验环境 3.1 设置网络拓扑图 (1)配置路由器局域网和广域网接口,如上图(可双击相应的图标,然后在命令行或图形界面上进行IP地址等配置) ①本例采用“Generic ...

  6. Android Studio设置自定义字体

    Android Studio设置自定义字体 (1)进入设置页面,File->Settings (2)自定义字体Editor->Colors&Fonts->Font (3)点击 ...

  7. BZOJ3812主旋律

    /* 这道题其实没有看懂 所以整理一下吧 首先思想转化成所有方案减去不强联通的方案 不强联通的方案相当于很多强联通分量缩点后的dag 转化成子问题, 问很多点的dag方案数 然后枚举作为出度为0的点集 ...

  8. python学习之----深网和暗网

    深网是网络的一部分,与浅网(surface Web)对立.浅网是互联网上搜索引擎可以抓 到的那部分网络.据不完全统计,互联网中其实约90% 的网络都是深网.因为谷歌不 能做像表单提交这类事情,也找不到 ...

  9. 可恶的 0xc0000005异常

    昨天快下班的时候自己写的代码突然跑出了这个异常,,搞的我特别的无语,因为昨天女朋友要过来了,给我出现了这么一个bug,心里很不爽,果断低下班了,另外一个原因就是公司其他人都跑了,每次基本都是我一个人最 ...

  10. django---单表操作之增删改

    首先找到操作的首页面‘ 代码如下 <!DOCTYPE html> <html lang="en"> <head> <meta charse ...