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. 关于Jedis连接Linux上的redis出现 DENIED Redis is running in protected mode问题的解决方案

    redis 添加了requirepass 123456后还是报错,原来是重新启动的时候./redis-cli  没有指定配置文件. https://blog.csdn.net/a532672728/a ...

  2. 第七章 :分布式监控与SNMP监控

    7.1 分布式监控 7.1.1 作用 分担压力,减轻负载 多机房监控 zabbix Server  ===>  zabbix agent (只能同一个局域网监控) 分担压力,降低负载 zabbi ...

  3. dropdownlist 绑定方法

    this.ddlUnit.SelectedValue = id; //注意大小写,如果选中失败会显示默认值. ListItem item=ddlUnit.Items.FindByValue(id); ...

  4. jvm内存分区及各区线程问题

    一.java内存模型图 二.直观分类图 三.各区简单描述 1.堆(heap):主要存放对象的实例也包括数组,是垃圾管理的主要作用区,是线程共享的 2.栈(stack):①虚拟机栈:描述的是 Java ...

  5. Hbase 分布式环境安装部署

    Hbase分布式集群搭建--安装步骤 这一步如果没有deploy.sh脚本的可以使用scp命令分别分发到其他节点去 到集群里看看安装好的hbase 使用脚本启动所有节点的zookeeper 启动HDF ...

  6. C#中唯一的三元运算符

    条件运算符?:接受三个操作数,是C#中唯一的三元运算符 ; ? : ; //转换成if选择结果如下 ) { j = ; } else { j = ; } 需要根据还可以嵌套三元运算符 ; ) ? : ...

  7. 关于python无法显示中文的问题:SyntaxError: Non-ASCII character '\xe4' in file test.py on line 3, but no encoding declared。

    [已解决]关于python无法显示中文的问题:SyntaxError: Non-ASCII character '\xe4' in file test.py on line 3, but no enc ...

  8. uiautomator 代码记录 :BT接收测试

    package rom; import java.lang.*; import java.util.Random; import java.io.File; import com.android.ui ...

  9. 学习笔记:webpack

    http://wiki.jikexueyuan.com/project/webpack-handbook/ Webpack 中文指南 http://www.itzjt.cc/2017/04/09/we ...

  10. mybatis关系映射之一对多和多对一

    本实例使用用户(User)和博客(Post)的例子做说明: 一个用户可以有多个博客, 一个博客只对应一个用户 一. 例子(本实体采用maven构建): 1. 代码结构图: 2. 数据库: t_user ...