JSP、EL表达式、JSTL

VMware Ubuntu虚拟机突然断网?我用5步彻底解决了(附避坑指南) Ubuntu虚拟机断网问题通常由网络配置冲突和VMware服务未正确绑定导致。本文提供5步解决方案:1)清理Ubuntu重复有线连接;2)重启Windows主机的VMware服务;3)检查VMware虚拟网络配置;4)重新配置Ubuntu网络参数;5)测试网络连通性。关键避坑点包括:避免多连接共存、修改配置后必重启服务、确保虚拟网卡绑定主机。通过"网卡状态→IP/路由→网关→服务"的排查思路,可快速解决虚拟机网络故障。文末附有详细的故障症状对照表,便于快速定位问题。 阅读详情

JSP <% %>

概念:Java Server Pages,java 服务器端页面。一种动态网页技术标准。

  • 可以理解为:一个特殊的页面,其中既可以指定定义 html 标签,又可以定义 java 代码。html 域 java 共处一个页面。
  • 用于简化 Servlet 开发。

原理:JSP 本质上就是一个继承了 Servlet 的实现类

  • 实现过程:浏览器访问.jsp资源;服务器解析请求消息,找到是否有.jsp资源;若有,会将.jsp文件转换为.java文件;编译java文件生成.class字节码文件;由该字节码文件给客户端提供响应。所以 JSP 本质上就是一个 Servlet。

  • JSP的脚本:JSP 页面定义 Java 代码的方式 <% %>

    • <% 代码 %>:该定义的java代码,在 jsp 转换为 java 类后变成service方法中的内容。service方法中可以定义什么,该脚本中就可以定义什么。

    • <%! 代码 %>:该定义的 java 代码,在 jsp 转换 java 类后放在成员位置。即可以用来定义成员变量和成员方法等。

    • <%= 代码 %>:该定义的 java 代码,会输出到浏览器页面上。输出语句中可以定义什么,该脚本中就可以定义什么。

  • jsp注释:
    <%-- --%>:可以注释所有。 html 注释 <!-- --> 只能注释html代码片段

JSP 指令

  • 作用:用于配置JSP页面,导入资源文件

    • 格式:
      <%@ 指令名称 属性名1=属性值1 属性名2=属性值2 ... %>
      
  • 三种指令:page、taglib、include

    page: 配置 JSP 页面的信息。如:

    <%@ page contentType="text/html; charset=UTF-8" language="java" %>
    
    • contentType:等同于response.setContentType()
      • 设置响应体的MIME类型以及字符集
      • 设置当前jsp页面的编码(只能是高级的IDE才能生效,如果使用低级工具,则需要设置pageEncoding属性设置当前页面的字符集)
    • import:导入 java 包。
    • errorPage:当前页面发生异常后,会自动跳转到指定的错误页面
    • isErrorPage:标识当前也是是否是错误页面。
      • true:是,可以使用内置对象exception
      • false:否。默认值。不可以使用内置对象exception

    include: 包含其他 jsp 页面的,即导入 jsp 页面的资源文件。如:

    <%@ include file="top.jsp"%>
    

    taglib:导入 jstl 标签库资源。如:

    <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
    
    • prefix:前缀,自定义的

JSP的内置对象

在jsp页面中不需要获取和创建,可以直接使用的对象。因为这些代码最终放到 service 方法中使用,而 service 方法中对这些对象已经声明了。

jsp一共有9个内置对象。

变量名真实类型作用
pageContextPageContext当前页面共享数据,还可以获取其他八个内置对象
requestHttpServletRequest一次请求访问的多个资源(转发)
sessionHttpSession一次会话的多个请求间
applicationServletContext所有用户间共享数据
responseHttpServletResponse响应对象
pageObject当前页面(Servlet)的对象 this
outJspWriter输出对象,数据输出到页面上
configServletConfigServlet的配置对象
exceptionThrowable异常对象

out:字符输出流对象。可以将数据输出到浏览器页面上。和 response.getWriter()类似。

response.getWriter() 和 out.write() 的区别:在tomcat服务器真正给客户端做出响应之前,会先找response缓冲区数据,再找out缓冲区数据。即 response.getWriter() 数据输出永远在 out.write() 之前。


EL表达式 ${ }

概念:Expression Language 表达式语言

作用:替换和简化 jsp 页面中 java 代码的编写,将结果显示在浏览器页面上。 简单来说EL表达式就是让程序员,简化了代码的书写量。在学EL表达式之前我们必须通过<%= %>来取出域中的数据,但这种方式过于繁琐,所以就诞生了EL表达式。

语法:${表达式}

  • 注意:jsp 默认支持 EL 表达式的。如果要忽略 EL 表达式

    1、设置 jsp 中page指令中:isELIgnored=“true” 忽略当前jsp页面中所有的el表达式
    2、\${表达式} :忽略当前这个el表达式。

使用:

  • 运算:

    • 运算符:

      1、算数运算符: + - * /(div) %(mod)
      2、 比较运算符: > < >= <= == !=
      3、逻辑运算符: &&(and) 、||(or)、 !(not)
      4、空运算符: empty

    • 空运算符 empty 功能:用于判断字符串、集合、数组对象是否为null或者长度是否为0如:

      ${empty list}:判断字符串、集合、数组对象是否为null或者长度为0
      ${not empty str}:表示判断字符串、集合、数组对象是否不为null 并且长度>0

  • 获取值:
    EL表达式只能从域对象中获取值,jsp中有四个域对象。
    语法:
    1、${域名称.键名}:从指定域中获取指定键的值,四个域对象名称:

    1、pageScope --> pageContext 域对象
    2、requestScope --> request 域对象
    3、sessionScope --> session 域对象
    4、applicationScope --> application(ServletContext)域对象

    举例:从 request 域中存储 name = 张三

    ${requestScope.name}
    

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

    3、获取对象、List集合、Map集合的值

    • 获取对象:${域名称.键名.属性名},本质上会去调用对象的getter方法
    • 获取List集合:${域名称.键名[索引]}
    • 获取Map集合:${域名称.键名.key名称} 或 ${域名称.键名[“key名称”]}
  • 隐式对象:
    EL 表达式中有11个隐式对象

    • pageContext:获取jsp其他八个内置对象,如:
      ${pageContext.request.contextPath}:动态获取虚拟目录
      

JSTL <C:标签名>

概念:JavaServer Pages Tag Library,JSP 标准标签库。是由Apache组织提供的开源的免费的jsp标签。

作用:用于简化和替换jsp页面上的java代码,将 Java 代码换成标签。jstl出现的目的同 el 一样也是要代替 jsp 页面中的脚本代码。JSTL 标准标签库有5个子库,但随着发展,目前常使用的是他的核心库。

JSTL五大子库:

Core(核心库) 标签库的URI:http://java.sun.com/jsp/jstl/core 常用前缀:c
I18N(国际化) 标签库的URI:http://java.sun.com/jsp/jstl/fmt 常用前缀:fmt
SQL 标签库的URI:http://java.sun.com/jsp/jstl/sql 常用前缀:sql
XML 标签库的URI:http://java.sun.com/jsp/jstl/xml 常用前缀:x
Functions 标签库的URI:http://java.sun.com/jsp/jstl/functions 常用前缀:fn

使用步骤:

  1. 导入jstl相关jar包
  2. 引入标签库:使用taglib指令:<%@ taglib %>
  3. 使用标签

常用的JSTL标签

  • if 标签:相当于 java 代码的 if 语句
    属性:

    • test 必须属性,接受boolean表达式的值。一般情况下,test属性值会结合el表达式一起使用,如果表达式为true,则显示if标签体内容,如果为false,则不显示标签体内容。
      <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
      <c:if test="${not empty str}">不为空</c:if>
      

    注意:

    • c:if 标签没有else情况,想要else情况,则可以在定义一个c:if标签

  • choose 标签:相当于 java 代码的 switch 语句

    • 使用 choose 标签声明, 相当于 switch 声明;

    • 使用 when 标签做判断, 相当于 case;

    • 使用 otherwise 标签做其他情况的声明, 相当于 default。

      如:

      <C:choose>
      	<c:when test="${number == 1}">星期一</c:when>
          <c:when test="${number == 2}">星期二</c:when>
          <c:when test="${number == 3}">星期三</c:when>
          <c:when test="${number == 4}">星期四</c:when>
          <c:when test="${number == 5}">星期五</c:when>
          <c:when test="${number == 6}">星期六</c:when>
      	<c:when test="${number == 7}">星期天</c:when>
      	<c:otherwise>数字输入有误</c:otherwise>
      </c:choose>
      
  • foreach 标签:相当于 java 代码的 for 语句

    • 完成重复的操作

      属性:

      • begin:开始值
      • end:结束值
      • var:临时变量
      • step:步长
      • varStatus :循环状态对象
        • index:容器中元素的索引,从o开始
        • count:循环次数,从1开始

      如:

      <c:forEach begin="1"  end="10"  var="i"  step="1">
      	${i}<br>
      </c:forEach>
      
    • 遍历容器

      属性:

      • items:容器对象
      • var:容器中元素的临时变量
      • varStatus :循环状态对象
        • index:容器中元素的索引,从o开始
        • count:循环次数,从1开始

      如:

      <c:forEach items="${list}"  var="str" varStatus="s">
      	${s.index} ${s.count} ${str}<br>
      </c:forEach>
      

​

(计算机组成原理)第二章数据的表示和运算-第二节:数字电路基础知识 本文介绍了计算机组成原理中的逻辑门电路、多路选择器和三态门。逻辑门电路包括基本逻辑运算(与、或、非)和复合逻辑运算(与非、或非、异或、同或),这些运算通过门电路实现,并满足分配律和结合律。多路选择器(MUX)用于从多个输入信号中选择一个输出,广泛应用于数据选择、资源共享和逻辑函数实现等场景。三态门则具有三种输出状态(高电平、低电平、高阻态),常用于总线控制和信号隔离。这些元件在数字电路设计和计算机系统中具有重要作用。 阅读详情

相关推荐

费斯托SPAN压力传感器的调试

本体为压力传感器,检测气压大小,通过设置参数,在上电上气时对气压进行判断,进而通过自身逻辑的判断,控制传感器的通断,进而控制机械部位的工作与运行;通电之后为如下图所示的样子有三个按键ABEdit键(编辑键、确认键)两步即可轻松连接。

大小曲奇的博客 1万+

JSP的EL表达式的使用详解,超详细(一文看懂el)

JSP的EL表达式的使用详解 一、什么是EL表达式 1.EL表达式的简介 EL表达式百度百科 全称(Expression language)表达语言 El表达式提供了获取对象以及属性的简单方法 2.对比JSP写法和EL表达式写法 JSP写法:<%=session.getAttribute("name")%> El表达式写法:${sessionScope.name} 注意点: El表达式写在JSP的HTML代码块中,而不能写在<%%>之间 二、EL表达式的基本语法 1.EL表

qq_48033003的博客 2万+

【08】C#实战篇——C#调用C++ 动态库dll,报错 “无法加载DLL“xxx.dll”: 找不到指定的模块。 (异常来自 HRESULT:0x8007007E)。”

摘要: 本文详细分析了C#调用C++封装的DLL时出现“无法加载DLL”错误的排查与解决方法。通过案例演示,列举了常见原因(如平台不匹配、路径错误、依赖缺失等),并重点介绍了使用VS的dumpbin工具检测DLL依赖项的方法。最终定位问题为缺失依赖的LineApi.dll和opencv_world455d.dll,将其放入C#的exe目录后解决。文章还对比了C++与C#的报错差异,提供了通用解决方案,包括检查运行时库、环境变量等,帮助开发者高效解决类似问题。 关键词: C#调用C++ DLL、dumpbin

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 2099

jsp指令&EL表达式&Jstl标签

JSTL是Jsp 标准标签库(Jsp Standard Tag Library),是由Apache组织提供的开源的jsp标签库。在使用的页面中通过导入标签库。:Expression Language,它是可以在JSP页面中直接使用的语言。:它可以从jsp的域对象中获取数据,简化java脚本,还可以执行一些简单的计算。JSTL标准标签库有5个子库,但随着发展,目前常使用的是它的核心库 core。,它的范围是当前页面。

weixin_43473236的博客 227

IWR6843ISK+DCA1000EVM 本人遇到的所有报错和解决方案

本文详解了初次使用DCA1000EVM和mmave studio遇到的一系列的问题以及解决方法

2301_77883976的博客 3312

「模型部署系列」ubuntu 使用vllm部署Qwen3-8B模型

解决这个问题的方法正如错误信息中所提示的,需要在命令行中显式地设置。下载单个文件到指定本地文件夹(以下载README.md到当前路径下“dir”目录为例)解决:这表明你正在使用的 Tesla T4 GPU 的计算能力为 7.5,而。,用于获取更详细的 NCCL 调试信息,当所有其他问题排除,可尝试增加。1、下载vllm v0.8.5(此处已经下好了,去仓库拉资源)在下载前,请先通过如下命令安装ModelScope。,这一错误最终致使引擎进程启动失败。更多更丰富的命令行下载选项,可参见。

汪依帆的博客 5044

EL表达式和JSTL标签库

一、EL表达式 1、定义及作用  EL表达式的全称是:Expression Language,是表达式语言  作用:EL表达式主要是代替jsp页面中的表达式脚本在jsp页面中进行数据的输出  因为EL表达式在输出数据时,要比jsp的表达式脚本要简洁很多 <body> <% request.setAttribute("key","值"); %> 表达式脚本输出key的值是:<%=request.getAttribute("key")%&gt

weixin_44116098的博客 295

使用STM32实现简单的语音识别

此外,还需要将计算机的音频输出连接到外部音频放大器上,以便将测试语音播放到MAX9814麦克风模块。运行STM32代码后,系统将开始采集语音数据,并在采集完成后调用Python脚本进行MFCC特征提取。在本案例中,我们将使用STM32F4开发板、MAX9814麦克风模块和MFCC特征提取算法来实现语音识别。通过这个案例,我们可以了解到如何结合STM32开发板和Python实现语音识别,并可以根据需要进行相关扩展和优化。现在,我们可以编译和烧录STM32代码到开发板中,并准备好测试语音文件。

吃不胖. 1473

JSP-EL表达式语言/JSTL标签库使用

EL表达式 概念:Expression Language 表达式语言 作用:替换和简化jsp页面中java代码的编写 语法:${表达式} 注意:jsp默认支持el表达式的。如果要忽略el表达式: 设置jsp中page指令中:isELIgnored="true" 忽略当前jsp页面中所有的el表达式 \{表达式}:忽略当前这个el表达式 使用: 运算: 运算符: 算数运算符:+ - * / (div) % (mod) 比较运算符:> < >= <= == != 逻辑运

flow 445

GEE:连续变化检测 CCD 第一步(导出ee.Algorithms.TemporalSegmentation.Ccdc函数的结果)

连续变化检测与分类(Continuous Change Detection and Classification, CCDC)主要有两个组件,一个连续变化检测 CCD,另外一个分类。在 Google Earth Engine (GEE)平台上进行 CCD 时间序列变化检测的时候,为了防止内存超限问题,将代码分为2阶段执行。第一阶段是运行 `ee.Algorithms.TemporalSegmentation.Ccdc` 函数,本文将详细介绍 CCD 的第一阶段的代码。

养乐多的博客 2496

我用C#实现上位机数据一键导出Excel:从乱码到百万行数据秒级导出的实战技巧

ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("日报表");// 1. 标题(合并单元格)worksheet.Cells["A1"].Value = $"产线日报表 -DateTimeNowToString// 2. 表头和数据(同上)worksheet.Cells["A3"].Value = "时间";// ...省略表头和数据填充// 3. 合计行(公式计算)

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 712

【EL与JSTL表达式】学习JSP之后,这是你不得不知道的技术

之前我们已经完成了对JSP的学习,但是还有一些其他的东西我们必须得知道,今天我们来学习EL与JSTL表达式。它们将简化JSP的书写并且使得JSP更加强大。

apple_51673523的博客 3452

SAP HANA 中的 Union Node Pruning:让 Calculation View 少走弯路的关键优化

摘要:SAP HANA的Union Node Pruning技术通过在执行前排除无关数据源来优化查询性能。该技术主要采用三种方式:Constant Mapping(适用于规则稳定的场景)、Pruning Configuration Table(灵活性高)和Column-Based Pruning(基于列可用性)。典型应用场景包括分层存储的数据查询,如区分当前和历史销售数据。需要注意的是,当查询发生Unfolding且不含聚合时,Pruning可能失效,此时可通过NO_CALC_VIEW_UNFOLDING提

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 875

Jsp和EL表达式及JSTL标签的使用

本篇介绍了Java Web阶段首先需要掌握的几大知识点,包括了jsp语法,EL表达式及JSTL标签的使用

Bennett的博客 2565

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

jsp中el表达式和jstl标签

bean 豆 在java中是类的意思 jar 罐子 在java中是一个包的意思,里面有多个类 el表达式(Expression Language) JSP表达式语言(EL表达式)访问存储在JavaBean(java 类)中的数据变得非常简单 主要用法 在jsp中原生的java代码和HTML标签看起来比较混乱 引入了el表达式 精确查找 如request.setAttribute(key,value) 如果${key}为模糊查找 在页面中${requestScope.key}实现精确查找 JSTL

小乌龟 3147

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

JSP中EL表达式和JSTL标签库的使用

JSP动态网页的介绍,EL表达式和JSTL标签库的使用。

AtlantisChina 1777

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

【JavaWeb】JSP进阶:EL表达式和JSTL标签

本文主要内容:1.EL表达式;2.JSTL:JSP标准标签库 本文目录写在前面一.EL表达式1.概念2.作用3.语法4.注意事项5.EL表达式使用5.1 运算5.2 获取值5.3 获取对象、List集合、Map集合的值5.4 使用隐式对象二.JSTL标准标签库1.概念2.作用3.使用步骤4.常用的JSTL标签5.练习 写在前面 JSTL仅是JSP表达式语言,而EL既是HTML也是JSP表达式语言,全称是Expression Language。 在JavaScript中也可以使用EL表达式。 JSP的代码

算法工程师dongab的博客 2118

tomcat 服务器启动与部署项目

tomcat

longool的博客 5704

Servlet(Server Applet)—— 运行在服务器端的小程序

目录什么是Servlet 什么是Servlet Servlet(Server Applet)是 Java Servlet 的简称,运行在服务器端的小程序,用Java 编写的服务器端程序。其主要功能在于交互式地浏览和生成数据,生成动态Web内容。

longool的博客 1300

Javaweb之三层架构

三层架构 三层架构就是为了符合“高内聚,低耦合”思想,把各个功能模块划分为表示层(UI)、业务逻辑层(BLL)和数据访问层(DAL)三层架构,各层之间采用接口相互访问,并通过对象模型的实体类(Model)作为数据传递的载体,不同的对象模型的实体类一般对应于数据库的不同表,实体类的属性与数据库表的字段名一致。 表示层(UI) 表示层又称表现层 UI,就是实现与用户交互的功能,将用户的需求传达和反馈,即用于接受用户输入的数据并反馈输出用户需要的数据。 业务逻辑层(BLL) 业务逻辑层 BLL是连接表示层和数据访

longool的博客 942

会话技术(Cookie 与 Session)

目录什么是会话Cookie(客户端会话技术)Session(服务端会话技术) 什么是会话 http是无状态的协议,每次请求之间是独立的。客户端请求访问 web 服务器时,服务器会打开一个会话响应,但是当你多次请求访问服务器,服务器并不知道每次都是你来请求访问,服务器也不会自动维护客户的上下文信息,所以服务器每次都会打开新的会话,每次请求都是独立的。 如果在淘宝上购物时,访问一个物品页面并将其加入到购物车,这是一次请求;然后又访问另一个物品页面并将其加入到购物车,这是一次新请求;然后到购物车界面去结算,这又

longool的博客 921

Servlet 之 HttpServlet —— 处理 Http 协议请求的抽象类

目录HttpServlet响应流程 HttpServlet HttpServlet 抽象类继承了 GenericServlet 抽象类。而 GenericServlet 抽象类实现类 Servlet 接口,所以 HttpServlet 遵循 Servlet 规则。 HttpServlet 是一个封装 Http 协议的抽象类。 HTTP1.1 定义的请求方式包括 DELETE、GET、OPTIONS、POST、PUT 和 TRACE,在 HttpServlet 类中分别提供了相应的服务方法:doDelete(

longool的博客 603

Javaweb 之 AJAX

AJAX Asynchronous Javascript And XML (异步 JavaScript 和 XML):是指一种创建交互式、快速动态网页应用的网页开发技术,无需重新加载整个网页的情况下,能够更新部分网页的技术。 AJAX 不是编程语言。AJAX 组合了: 浏览器内建的 XMLHttpRequest 对象(从 web 服务器请求数据)。 JavaScript 和 HTML DOM(显示或使用数据)。 AJAX工作原理: 网页中发生一个事件(页面加载、按钮点击) 由 JavaScript

longool的博客 506

ServletContext 接口 —— 代表整个 web 应用

目录ServletContext ServletContext ServletContext 接口是 Servlet 中最大的一个接口,呈现了 web 应用的 Servle 视图,即代表整个 web 应用,可以实现 servlet 用于与其 servlet 容器之间的通信。ServletContext 实例是通过 getServletContext() 方法获得的。 ServletContext 对象由 Web 服务器创建,服务器会为每一个 web 项目创建一个servletContext对象。Servle

longool的博客 381

ServletRequest 与 ServletResponse 接口

目录ServletRequestHttpServletRequest请求转发数据共享 ServletRequest ServletRequest 由 Servlet 容器来管理,当客户请求到来时,Servlet 容器创建一个 ServletRequest 对象,封装请求数据,同时创建一个 ServletResponse 对象,封装响应数据。这两个对象将被容器作为参数传递给 Servlet 的 service() 方法的,Servlet 利用 ServletRequest 对象获取客户端发来的请求数据,利用S

longool的博客 334

JavaScript 之 HTML DOM 对象

HTML DOM 通过 HTML DOM,JavaScript 能够访问和改变 HTML 文档的所有元素。 HTML DOM(文档对象模型): 当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。 HTML DOM 模型被结构化为对象树: 通过这个对象模型,JavaScript 获得创建动态 HTML 的所有力量: JavaScript 能改变页面中的所有 HTML 元素 JavaScript 能改变页面中的所有 HTML 属性 JavaScript 能改变页

longool的博客 282
上一篇: 案例(黑马)—— 登录+验证码
下一篇: 简单三层架构案例(黑马)—— 用户信息列表展示
ShareBeHappy_Qin
博客等级 码龄9年 2321粉丝 137原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值