• EL 与 JSTL(1)( EL 表达式基础知识)


    EL 表达式用美元符号“$”定界,内容包含在一对花括号“{}”中,例如:${expression}。
    EL 表达式语法很简单,它最大的特点就是使用很方便。

     1.EL 表达式特点

    (1)在 EL 表达式中可以获得命名空间(PageContext 对象,它是页面中所有其他内置对象的最大范围的集成对象,通过它可以访问其他内置对象);
    (2)表达式可以访问一般变量,还可以访问 JavaBean 类中的属性以及嵌套属性和集合对象;
    (3)在 EL 表达式中可以执行关系、逻辑和算术等运算;
    (4)扩展函数可以与 Java 类的静态方法进行映射;
    (5)在表达式中可以访问 JSP 的作用域(request,session,application 以及 page)。
    1. <jsp:useBean id="dao" scope="page" class="com.UserInfoDao">jsp:useBean>
    2. <%dao.name;%>
    3. <%dao.getName();%>
    1. <jsp:useBean id="dao" scope="page" class="com.UserInfoDao">jsp:useBean>
    2. ${dao.name}
    3. ${dao.getName()}

    2.EL 获取变量值的方法

     EL 使用到的变量作用域范围的名称:
    1.  page 范围:在 EL 中使用名称 pageScope;
    2.  request 范围:在 EL 中使用名称 requestScope;
    3.  session 范围:在 EL 中使用名称 sessionScope;
    4.  application 范围:在 EL 中使用名称 applicationScope。
    1. <%@ page language="java" contentType="text/html; charset=UTF-8"
    2. pageEncoding="UTF-8"%>
    3. html>
    4. <html>
    5. <head>
    6. <meta charset="UTF-8">
    7. <title>Insert title heretitle>
    8. head>
    9. <body>
    10. <% String s1 = "Hello!";
    11. request.setAttribute("s1",s1);
    12. String s2="Hello!"; //未将 s2 放入域空间,EL 将无法获取
    13. %>
    14. <%="${s1}"%>=${s1} <br>
    15. <%="${s2}"%>=${s2} <br>
    16. body>
    17. html>

    3.EL 利用“[ ]”与“.”操作符取数据

     

     

    1. <%@page import="java.util.List"%>
    2. <%@page import="java.util.ArrayList"%>
    3. <%@page import="java.util.HashMap"%>
    4. <%@ page language="java" contentType="text/html; charset=UTF-8"
    5. pageEncoding="UTF-8"%>
    6. html>
    7. <html>
    8. <head>
    9. <meta charset="UTF-8">
    10. <title>Insert title heretitle>
    11. head>
    12. <body>
    13. <% char[] ch = { '1', '2' };
    14. request.setAttribute("ch", ch); //将字符数组变量 ch 置于 requestScope 域,以便 EL 可以访问。
    15. String s1 = "Hello,how are you!";
    16. request.setAttribute("s1", s1);
    17. List<String> list = new ArrayList<String>();
    18. list.add("first");
    19. list.add("second");
    20. request.setAttribute("list", list);
    21. HashMap map1 = new HashMap();
    22. map1.put(0L, "天翼");
    23. map1.put(1L, "翼支付");
    24. request.setAttribute("map1", map1);
    25. %>
    26. s1=${s1}<br>
    27. 字符数组:<%="${ch[1]}"%>=${ch[1]} <br>
    28. List 集合:<%="${list[1]}"%>=${list[1]}<br>
    29. Map 集合:<%="${map1[1]}"%>=${map1[1]} <br>
    30. body>
    31. html>

     4.EL 表达式中的隐式对象

     

  • 相关阅读:
    全栈软件开发人员提问常用的ChatGPT通用提示词模板
    自制代码编辑器:CASM Editor
    kafka集成flink api编写教程
    Unity shader time
    异步请求池——池式组件
    vue3+element-plus 封装列表页,分页,排序,导出
    云服务器搭建XSS-platform、DVWA靶机和Permeate论坛
    Nginx代理
    apk反编译工具下载
    第六章 配置命名空间(一)
  • 原文地址:https://blog.csdn.net/weixin_62190821/article/details/127777604