JSP格式化标签 parseNumber指定格式字符串转数字类型

news2025/3/1 13:16:38

好 我们继续来说格式化标签

parseNumber

它的作用是讲一个字符串 转换为指定格式的数值型
老实说 这东西 作为了解把
实际开发中都不是用得少 我建议还是在java端就处理好 不建议在jsp中高这种类型转换的操作

基本格式如下
在这里插入图片描述
这几个属性都是我们这几期jsp标签的老朋友了
在这里插入图片描述
我们可以先编写代码如下

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%request.setCharacterEncoding("UTF-8");%>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!DOCTYPE html>
<html>
	<head>
	    <title>JSP - Hello World</title>
	</head>
	<body>
		<%
		    request.setAttribute("numericalValue","100");
		%>
		<fmt:parseNumber value="${numericalValue}"/> <br>
	</body>
</html>

我们在jsp中 百分比java代码中声明了一个request作用域对象 叫numericalValue 值为 字符串类型的 100
然后 用parseNumber标签转换它
运行结果如下
在这里插入图片描述
看不出什么很明显的效果 但其实唯一的不同就是类型 parseNumber输出的这个是数字类型的 100
其实唯一的用处 或许是 将字符串转数字然后用var和scope将他声明到作用域中去写逻辑代码 但是 之前也说过不建议在jsp中写java代码 所以 这个东西不是一般的积累

然后 我们第二种写法 用type设置类型
我们编写代码如下

<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%request.setCharacterEncoding("UTF-8");%>
<%@taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<!DOCTYPE html>
<html>
    <head>
        <title>JSP - Hello World</title>
    </head>
    <body>
        <%
            request.setAttribute("numericalValue","100");
            request.setAttribute("percentageValue","100%");
        %>
        number 默认值 不设置 type就是 number 表示将内容转为数字类型<br>
        <fmt:parseNumber value="${numericalValue}" type="number"/> <br>
        percent 设置百分比格式的字符串<br>
        <fmt:parseNumber value="${percentageValue}" type="percent"/> <br>
    </body>
</html>

这里 我们作用域声明了两个值 100字符串类型 百分之100字符串类型
然后 我们 type处理number就是默认类型 还是字符串转数字
然后 percent 将百分比格式的字符串转数字
其实还有一个currency 但这东西问题挺大的 大家可以自己去试一下

运行结果如下
在这里插入图片描述
然后 var 和 scope都是老朋友了 这里我就不多说了

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

fastsocket提升nginx CPS性能分析

fastsocket是针对单机网络性能优化&#xff0c;提升单机的cps。 提升现在单机7LB服务的性能&#xff0c;预计cps的性能提升一倍。 内核对nginx的性能瓶颈损耗主要在内核的三把锁。 1. accpet的全局队列的sk_lock锁 2. new_inode中的全局inode_lock锁 3. sock_alloc_file中的…

固态硬盘与机械硬盘的区别

盘、磁道、扇区、柱面&#xff0c;这些都是机械硬盘的概念&#xff0c;固态硬盘没有这些东西&#xff0c;固态硬盘和机械硬盘虽然都叫硬盘&#xff0c;但是在原理层面有着本质上的区别。 速印机&#xff08;理想、荣大等&#xff09;、复印机&#xff08;夏普、东芝、理光、佳能…

【论文阅读 + 核心代码定位解读】(2023 AAAI)HiCLR

Hierarchical Consistent Contrastive Learning for Skeleton-Based Action Recognition with Growing Augmentations Contribution 直接使用 strong augmentations 会导致图片/骨架点序列的结构变形和语义信息损失&#xff0c;从而导致训练过程的不稳定。于是本文提出了一种逐…

【BLE基础知识】--Slave latency设置流程及空中包解析

1、Slave latency基本概念 当BLE从设备对耗电量要求较高时&#xff0c;若需要节省耗电量&#xff0c;则可以通过设置Slave Latency参数来减少BLE从设备的耗电。 Slave Latency&#xff1a;允许Slave&#xff08;从设备&#xff09;在没有数据要发的情况下&#xff0c;跳过一定…

SQL Server 数据库,分离和附加数据库

2.2.4分离和附加数据库 如果要将数据库更改到同一计算机或不同计算机的不同SOL Server实例中&#xff0c;或要移动数据库文 件存储的位置&#xff0c;分离和附加数据库会很有用。可以将数据库的数据文件和日志文件从所在实例分离 出来&#xff0c;然后将它们重新附加同一或其他…

SpringDataRedis 操作 Redis,并指定数据序列化器

文章目录 1. SpringDataRedis 概述2. 快速入门2.1 导入pom坐标2.2 配置文件2.3 测试代码2.4 数据序列化器2.5 StringRedisTemplate2.6 总结 1. SpringDataRedis 概述 SpringData 是Spring 中数据操作的模块&#xff0c;包含对各种数据库的集成&#xff0c;其中对Redis的集成模…

KDE环境文件夹user-dirs为英文

KDE环境文件夹user-dirs 修改KDE主页文件夹为英文 该文件路径 ~/.config/user-dirs.dirs打开后会发现里面的内容如下 # This file is written by xdg-user-dirs-update # If you want to change or add directories, just edit the line youre # interested in. All local …

STM32踩坑--串口发送乱码

一、发现问题 今天在STM32F407新板子上测试串口时&#xff0c;发现发送数据一直乱码。 二、解决问题 针对STM32F407系列校准PLLCLK时钟&#xff1a; ①由 时钟树 可以看出PLLCLKHSE&#xff08;高速外部时钟&#xff09;*N/(M*P)。因为SYSTICK一般取最高的时钟168M&#xff…

行为型剩余的模式

1.中介者模式 package com.jmj.pattern.mediator;public abstract class Mediator {public abstract void constact(String message,Person person); }package com.jmj.pattern.mediator;public class MediatorStructure extends Mediator{private HouseOwner houseOwner;priva…

Elasticsearch:什么是大语言模型(LLM)?

大语言模型定义 大语言模型 (LLM) 是一种深度学习算法&#xff0c;可以执行各种自然语言处理 (natural language processing - NLP) 任务。 大型语言模型使用 Transformer 模型&#xff0c;并使用大量数据集进行训练 —— 因此规模很大。 这使他们能够识别、翻译、预测或生成文…

PMP-01

考纲 需要看的书籍 学习计划

设计模式之原型模式(2)--深拷贝的实现图文讲解

目录 前言Clone方法复制值类型变量引用类型成员变量只复制引用浅拷贝变深拷贝 示例详解注意事项总结 前言 在上一篇原型模式博客的基础上&#xff0c;今天第二次写&#xff0c;会详细讲解一下从浅拷贝到深拷贝的实现&#xff0c;我也有专门写过一篇关于浅拷贝与深拷贝的文章&am…

【机器学习】简单认识监督学习

简单认识监督学习 ⭐️Supervised learning⭐️Examples⭐️Specific example⭐️两种类型的监督学习算法&#x1f319;回归算法&#x1f319;分类算法 ⭐️总结 Hi~大家好呀&#xff01;经历了暑假期间短暂的接触机器学习的一些算法&#xff0c;之后又对深度学习、yolo系列有些…

C++二维数组名到底代表个啥

题目先导 int a[3][4]; 则对数组元素a[i][j]正确的引用是*(*(ai)j)先翻译一下这个*(*(ai)j)&#xff0c;即a后移i解引用&#xff0c;再后移j再解引用&#xff0c;这么看来a就应该是个二维数组&#xff0c;第一层存储行向量&#xff0c;一次解引用获得行向量的地址&#xff0c;…

【Leetcode题单】(01 数组篇)刷题关键点总结03【数组的改变、移动】

【Leetcode题单】&#xff08;01 数组篇&#xff09;刷题关键点总结03【数组的改变、移动】&#xff08;3题&#xff09; 数组的改变、移动453. 最小操作次数使数组元素相等 Medium665. 非递减数列 Medium283. 移动零 Easy 大家好&#xff0c;这里是新开的LeetCode刷题系列&…

数据库-MySQL之数据库必知必会22-26章

第 22 章 使用视图 视图是虚拟的表。与包含数据的表不一样&#xff0c;视图只包含使用时动态检索数据的查询。 使用视图 视图用CREATE VIEW语句来创建。 使用SHOW CREATE VIEW viewname&#xff1b;来查看创建视图的语句。 用DROP删除视图&#xff0c;其语法为DROP VIEW view…

7.24 SpringBoot项目实战【审核评论】

文章目录 前言一、编写控制器二、编写服务层三、Postman测试前言 我们在 上文 7.23 已经实现了 评论 功能,本文我们继续SpringBoot项目实战 审核评论 功能。逻辑如下: 一是判断管理员权限,关于角色权限校验 在 7.5 和 7.6 分别基于 拦截器Interceptor 和 切面AOP 都实现过…

反序列化漏洞详解(三)

目录 一、wakeup绕过 二、引用 三、session反序列化漏洞 3.1 php方式存取session格式 3.2 php_serialize方式存取session格式 3.3 php_binary方式存取session格式 3.4 代码演示 3.5 session例题获取flag 四、phar反序列化漏洞 4.1 phar常识 4.2 代码演示 4.3 phar例…

TensorRT安装及使用教程(ubuntu系统部署yolov7)

1 什么是TensorRT 一般的深度学习项目&#xff0c;训练时为了加快速度&#xff0c;会使用多 GPU 分布式训练。但在部署推理时&#xff0c;为了降低成本&#xff0c;往往使用单个 GPU 机器甚至嵌入式平台&#xff08;比如 NVIDIA Jetson&#xff09;进行部署&#xff0c;部署端也…

【Springboot+vue】如何运行springboot+vue项目

从github 或者 gitee 下载源码后&#xff0c;解压&#xff0c;再从idea打开项目 后端代码处理 这是我在gitee下载下来的源码 打开之后&#xff0c;先处理后端代码 该配置的配置&#xff0c;该部署的部署 比如将sql文件导入数据库 然后去配置文件更改配置 然后启动项目 确保…