JSP 条件动作标签之if标签详解

好 上文 JSP JSTL引入依赖并演示基础使用我们导入了 JSTL的JAR 并 演示了 IF标签的基础使用
本文 我们来说说 平时开发的常用标签
这里 我们需要先强调一下 常用标签 操作的全部都是域对象

首先 我们来看

条件动作标签

条件动作标签的特点是 依赖于某些域对象值 控制页面输出结果
就像我们 java中的 if if else switch 等等
我们jsp中 有四个标签 if、choose、when、otherwise

先来说 if
我们可以这样写

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%request.setCharacterEncoding("UTF-8");%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html>
<html>
<head><title>JSP - Hello World</title>
</head>
<body><%request.setAttribute("num",10);%><c:if test="${num > 0}"><h1>你好 HTML</h1></c:if>
</body>
</html>

这里 我们在request作用域中定义了 num的值 为 10 然后 我们 用了 if标签 test中写条件 我们判断num大于1 那么 10自然比1大 这个条件是肯定成立的
除了这种 我们还可加一段

<c:if test="${num > 100}" var="mvcTg" scope="request"></c:if>
${mvcTg}

在这里插入图片描述
mvcTg存储 我们test是否成立的值 然后 我们声明的这个值是在域对象中的 具体它在哪个域是 scope控制的 这里 我们把他放在request中
然后 最后 我们用EL表达式 输出一下mvcTg 看看能不能输出到这个值
在这里插入图片描述
可以看到 这个输出没有任何问题 因为 num 的值是10 第一个条件肯定成立 10大于1 所以 中间的h1标签 你好HTML被输出
然后 我们定义一个域对象 mvcTg 存储第二个if标签的结果 条件是 num 大于100 10是小于100的 条件肯定不成立 然后mvcTg被存储在了域对象中 我们通过EL输出 也是成功将false输出了出来

但if其实除了 test 其他的基本都不怎么用
然后 这里需要强调 我们的if标签操作 没有else 如果你想在jsp标签中 实现else效果 就设置与成功相反的条件if
例如 我们这样
在这里插入图片描述
两个条件 完全相反 其实你可以直接把成功条件复制过来 在前面加一个感叹号 取反 这个我们之前也说过

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/225484.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

自动化接口测试:Pytest让你轻松搞定!了解一般流程及方法

首先我们要明确&#xff0c;通常所接口测试其实就属于功能测试&#xff0c;主要校验接口是否实现预定的功能&#xff0c;虽然有些情况下可能还需要对接口进行性能测试、安全性测试。 在学习接口自动化测试之前&#xff0c;我们先来了解手工接口测试怎样进行。 URL组成 为了更…

定时器与线程池

文章目录 定时器定时器的工作原理定时器的使用实现定时器 线程池线程池存的优点线程池的使用线程池的原理工厂模式ThreadPoolExecutor类 实现线程池 定时器 定时器也是软件开发中的一个重要组件&#xff0c;我们可以将一个任务交给定时器&#xff0c;约定好时间到了定时器就执…

纯干货篇,用Stable diffusion制作广告的保姆级教程

今天就想给大家演示一般如何使用Stable diffusion为你的产品添加场景&#xff0c;秒变广告大片。 掌握这个技能&#xff0c;你可以随意将产品添加不同的场景&#xff0c;节约复杂的拍摄布景和拍摄成本。 话不多说&#xff0c;接下来是详细讲解演示流程 首先选出一张你的产品图…

解决方案:新版WPS-右键粘贴值到可见单元格没有了

WPS筛序后复制&#xff0c;并且粘贴到可见单元格 &#xff08;如果直接粘贴数据会乱掉&#xff09; 旧版WPS&#xff0c;右键就能出现 但是新版WPS不是在这里&#xff08;方法1&#xff09; 新版WPS&#xff08;方法2&#xff09; 视频详细教程链接&#xff1a;解决方案&…

抽象工厂模式-C语言实现

说明&#xff1a; 均由 chatgpt生成&#xff0c;实例可以看出无法运行&#xff0c;仅供参考~ 抽象工厂模式&#xff1a; 代码实现&#xff1a; #include <stdio.h>// 定义抽象产品接口 typedef struct {void (*operation)(); } AbstractProductA;typedef struct {voi…

淼一科技为互联网企业销毁硬盘数据 拆除机房设备

在上海这座繁华的大都市&#xff0c;淼一科技以其专业的服务和卓越的技术&#xff0c;为众多互联网企业提供硬盘数据销毁和机房设备拆除服务。作为业界领先的数据安全解决方案提供商&#xff0c;淼一科技致力于保障客户数据的安全与隐私&#xff0c;为客户创造更高的商业价值。…

Node.js【GET/POST请求、http模块、路由、创建客户端、作为中间层、文件系统模块】(二)-全面详解(学习总结---从入门到深化)

目录 Node.js Stream(流)&#xff08;三&#xff09; Node.js http模块 Node.js GET/POST请求&#xff08;一&#xff09; Node.js GET/POST请求&#xff08;二&#xff09; Node.js 路由 Node.js 创建客户端 Node.js 作为中间层 Node.js 文件系统模块&#xff08;一&am…

解释LED显示屏的裸眼3D特效原理

LED电子大屏幕的3D特效技术正在不断发展&#xff0c;而实现这一技术的原理主要包括分光、分色、分时和光栅等四种方法。这些原理都有各自的特点和应用场景&#xff0c;下面将对它们进行详细介绍。 1. 分光方法 分光方法是一种基于偏振光的3D显示技术。通过使用偏振滤镜或偏振片…

曝光!WPS用户信息或被盗用,紧急行动,迅软DSE数据加密应时而动!

WPS摊上大事了&#xff01;有用户发现&#xff0c;在WPS更新的一版用户隐私政策中&#xff0c;明确提到&#xff1a;“我们将对您主动上传的文档材料&#xff0c;在处理后作为AI训练的基础材料使用。”换句话说&#xff0c;WPS有可能“白嫖”用户的文档信息&#xff0c;用于投喂…

A preview error may have occurred. Switch to the Log tab to view details.

我们在学习鸿蒙应用开发的UIAbility内页面间的跳转内容的时候会遇到页面无法跳转的问题。并伴随标题的error报错 Entry Component struct Index {build() {Column({ space: CommonConstants.COLUMN_SPACE }) {//UIAbility内页面间的跳转Button(Next).onClick(() > {router.…

好用的基于layui的免费开源后台模版layuimini

发现一个好用的后台模版 基于layui的免费开源后台模版layuimini layuimini - 基于Layui的后台管理系统前端模板 easyadmin开源项目 EasyAdmin是基于ThinkPHP6.0Layui的快速开发的后台管理系统。 演示站点 演示地址&#xff1a;跳转提示&#xff08;账号&#xff1a;admin&a…

【mmseg】ValueError: Only one of `max_epochs` or `max_iters` can be set.报错解决

目录 &#x1f49c;&#x1f49c;1背景 ❤️ ❤️2分析 &#x1f525;2.1config查看 &#x1f525;2.2BaseRunner基类 &#x1f49a;&#x1f49a;3解决 &#x1f525;3.1按照epoch &#x1f525;3.2按照iters 整理不易&#xff0c;欢迎一键三连&#xff01;&#xff01…