EL表达式和JSTL标签

一、EL表达式:

1. 概念:Expression Language 表达式语言
2. 作用:替换和简化jsp页面中java代码的编写
3. 语法:${表达式}
4. 注意:
    * jsp默认支持el表达式的。如果要忽略el表达式
          1. 设置jsp中page指令中:isELIgnored="true" 忽略当前jsp页面中所有的el表达式
          2. \${表达式} :忽略当前这个el表达式
5. 使用:
        1. 运算:
            * 运算符:
                1. 算数运算符: + - * /(div) %(mod)
                2. 比较运算符: > < >= <= == !=
                3. 逻辑运算符: &&(and) ||(or) !(not)
                4. 空运算符: empty
                    * 功能:用于判断字符串、集合、数组对象是否为null或者长度是否为0
                    * ${empty list}:判断字符串、集合、数组对象是否为null或者长度为0
                    * ${not empty str}:表示判断字符串、集合、数组对象是否不为null 并且 长度>0
        2. 获取值
             2.1 el表达式只能从域对象中获取值
             2.2 语法:
                  1. ${域名称.键名}:从指定域中获取指定键的值
                    * 域名称:
                        1. pageScope        --> pageContext
                        2. requestScope     --> request
                        3. sessionScope     --> session
                        4. applicationScope --> application(ServletContext)
                    * 举例:在request域中存储了name=张三
                    * 获取:${requestScope.name}

2. ${键名}:表示依次从最小的域中查找是否有该键对应的值,直到找到为止。

3. 获取对象、List集合、Map集合的值
                    1. 对象:${域名称.键名.属性名}
                        * 本质上会去调用对象的getter方法
                    2. List集合:${域名称.键名[索引]}
                    3. Map集合:
                        * ${域名称.键名.key名称}
                        * ${域名称.键名["key名称"]}
          2.3隐式对象:
                * el表达式中有11个隐式对象:pageContext:获取jsp其他八个内置对象
                    * ${pageContext.request.contextPath}:动态获取虚拟目录

二、JSTL标签:

1. 概念:JavaServer Pages Tag Library  JSP标准标签库
2. 作用:用于简化和替换jsp页面上的java代码        
3. 使用步骤:
        1. 导入jstl相关jar包

2. 引入标签库:taglib指令:  <%@ taglib %>
        3. 使用标签
4. 常用的JSTL标签
        1. if:相当于java代码的if语句
            1. 属性:
                * test 必须属性,接受boolean表达式
                    * 如果表达式为true,则显示if标签体内容,如果为false,则不显示标签体内容
                    * 一般情况下,test属性值会结合el表达式一起使用
                2. 注意:
                    * c:if标签没有else情况,想要else情况,则可以在定义一个c:if标签
        2. choose:相当于java代码的switch语句
            1. 使用choose标签声明                     相当于switch声明
            2. 使用when标签做判断                     相当于case
            3. 使用otherwise标签做其他情况的声明        相当于default
        3. foreach:相当于java代码的for语句
               1.完成重复的操作
                  for(inti=0;i<10;i++){
                      *属性:
                            begin;开始值
                            end:结束值
                            var:临时变量
                            step:步长
                            varStatus :循环状态对象
                            index:容器中元素的索引,从o开始
                            count :循环次数,从1开始

原文地址:https://www.cnblogs.com/iceywu/p/12305388.html

时间: 2024-10-14 21:54:54

EL表达式和JSTL标签的相关文章

EL表达式、 jstl标签

EL表达式(Expression Language) 目的:为了使JSP写起来更加简单.表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方法,让Jsp的代码更加简化. 1.语法结构 ${expression} 2.[ ]与.运算符 EL 提供"."和"[ ]"两种运算符来存取数据. 当要存取的属性名称中包含一些特殊字符,如 . 或 - 等并非字母或数字的符号,就一定要使用"[ ]".例如

Java实战之04JavaWeb-04JSP、EL表达式、JSTL标签库

一.jsp部分 只要是与页面显示相关的都是重点 1.jsp的脚本 <%java代码%>:被翻译到service方法内部,局部变量,局部的功能 <%=表达式或变量%>:翻译成service方法中out.write(表达式或变量) <%!java代码%>:被翻译成servlet的全局的内容,方法,全局变量 2.jsp的运行原理 jsp在运行时翻译成servlet index.jsp------>work/index_jsp.java----->work/inde

JavaWeb基础—EL表达式与JSTL标签库

EL表达式: EL 全名为Expression Language.EL主要作用 获取数据(访问对象,访问数据,遍历集合等) 执行运算 获取JavaWeb常用对象 调用Java方法(EL函数库) 给出一个小案例: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ page import="com.jiangbei.domain

Struts标签、Ognl表达式、el表达式、jstl标签库这四者之间的关系和各自作用

<转载> 我之前虽然会用,但是一直分不清彼此之间有什么区别,所以查找资料,将它们进行整合区分,加深了解, 一 介绍 1.Struts2的作用   Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了更好的代码复用.Struts2允许在页面中使用自定义组件,这完全能满足项目中页面显示复杂,多变的需求.Struts2的标签库有一个巨大的改进之处,struts2标签库的标签不依赖于任何表现层技术,也就是说strtus2提供

EL表达式和JSTL标签库使用详解

JavaBean在JSP中的局限 获取JavaBean属性必须要实例化 强制类型转化 <% Employee employee = (Employee)request.getAttribute("employee"); Computer comp = employee.getComputer(); String manufacturer = comp.getManufacturer(); %> 如果页面编写出现逻辑错误,将会导致代码执行错误,并且JSP页面编译页面时也会产生

EL表达式和JSTL标签的用法举例

Person类 package cn.itcast.domain; import java.util.Date; public class Person { private String name; private Address address; public Person() { } public Person(String name) { this.name = name; } public String getName() { return name; } public void set

JAVA Web基础 EL表达式与JSTL标签库

一.EL表达式语言1.EL表达式全称expression language,用于在JSP页面获取其内置对象的内容语法:${...}在jsp中page指令有一个属性是isELIgnored, 用来标记此页面是否忽略EL表达式, 默认为false,即不忽略2.用法说明常规写法举例:<%= request.getAttribute("test")>EL表达式写法:${test}//当作用域属性名都是唯一时可以这么写            ${requestScope.test}/

EL表达式 与 JSTL标签库

EL表达式 什么是el jsp内置的表达式语言 el表达式的作用 代替脚本 el如何获取数据 1.获取域中的数据 简单数据:${域中的key值} 注意:如果多个域中的key值一样 那么取出的顺序? 从范围小的开始查找,查找到以后就返回 如果没有查询到对应的key 返回""(空字符串) 例如: <% pageContext.setAttribute("num", 5); request.setAttribute("num", 1); sess

EL表达式和JSTL标签库

1 EL表达式 1.1 EL的概述 EL,全名为Expression Language. 主要作用: ①EL表达式主要用于替换jsp页面中的脚本表达式,以便于从各种类型的web域中检索java对象(某个web域中的对象),获取数据(访问javabean的属性.访问List集合.访问Map集合.访问数组). ②执行运算. ③利用EL表达式可以在jsp页面中执行一些基本的关系运算.逻辑运算和算数运算,以便于在jsp页面完成一些简单的逻辑运算. ④获取web开发常用的对象. ⑤EL表达式定义了一些隐式