关于null的大坑
发表于|更新于
|浏览量:
今天跟前端对接口的时候。。。
有个关键字keyword,前端明明没传入进来,我执行判断的时候,一直进不去那段“如果为空就XXX的逻辑”
1 | if (StringUtils.isNoneBlank(commonQueryDtoEntity.getKeywords())) { |
最后发现代码里我是这样写的
1 | commonQueryDtoEntity.getKeywords()+"" |
这样其实转换出来并不是空串,而是一个”null”字符串。。。
1 | "null" |
希望引以为戒
相关推荐
2022-04-17
set-cookie
我的肩上是风,风上是闪烁的星群。——北岛 我们可以在响应头中添加set-cookie的响应头来操作cookie 例如我此处: 12345678@Resourceprivate HttpServletResponse response;@GetMappingpublic Result testQueryParam(CommonDTO commonDTO) { response.setHeader("set-cookie", "cookie-name=cookie-value; Path=/; HttpOnly; Max-Age=5"); return Result.ok() } 就设置了一个名为cookie-name,值为cookie-value,路径为/,仅限http请求,过期时间为5秒的cookie 完整的参数可以看MDN文档: https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Headers/Set-Cookie 此处cookie的效...
2024-07-29
Apache ShenYu实现新登录后让其他token失效
尔曹身与名俱灭,不废江河万古流。——杜甫 今天做了这么一个需求: 在shenyu登录时候让之前的token失效 这里主要是在token里添加了一个唯一标识符与数据库里的值进行校验,每次登录生成新的唯一标识符存储到数据库中 PR链接如下: https://github.com/apache/shenyu/pull/5600 描述如下: 概述:此拉取请求解决了新的登录会话应使同一用户的所有先前登录会话失效的业务需求。这是通过引入 client_id 字段来实现的,该字段唯一标识每个登录会话。 client_id 包含在 JWT 令牌中,并针对每个请求进行验证,以确保只有最新的会话保持活动状态。 引入的变化: 后端增强: 向用户模型添加了一个 client_id 字段来跟踪当前会话的客户端 ID。 更新了身份验证过程,以在每次登录时生成新的 client_id 。 修改了 JwtUtils 以将 client_id 包含在生成的 JWT 令牌中并在令牌验证期间提取它。 ShiroRealm 修改: 在 ShiroRealm 中添加了逻辑,以从 JWT 令牌中提取 cl...
2024-10-12
Apache-StreamPark发版配置GPG
你要教你的孩子走路。但是应由孩子自己去学走路。——爱默生 记录如下: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891...
2020-11-14
qq邮箱发送
宁鸣而死,不默而生。——胡适 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566package com.ruben.utils; /** * @ClassName: SendEmail * @Date: 2020/11/7 0007 19:36 * @Description: */import com.ruben.pojo.EmailDataTransferObject;import javax.mail.*;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import java.util.Properties;/** * @ClassName: SendEmail * @Description: 我还没有写描述 * @Date: 2020/11/7 0007 19:3...
2024-04-25
apache-streampark发版验证
一个人的行走范围,就是他的世界。——《青灯》 安装svn 1brew install svn 然后验证: https://streampark.apache.org/zh-CN/community/release/how_to_verify_release/ 大概全程如下: mkdir streampark - 创建一个名为”streampark”的新文件夹。 cd streampark/ - 进入这个新创建的”streampark”文件夹。 svn co https://dist.apache.org/repos/dist/dev/incubator/streampark/2.1.4-RC1/ - 通过Subversion(svn)从Apache的服务器上检出(下载)版本为”2.1.4-RC1”的streampark项目文件。 curl https://downloads.apache.org/incubator/streampark/KEYS > KEYS - 使用curl命令下载streampark项目的密钥文件,并将其保存为本地文件”KEYS”。 gpg -...
2025-12-24
1brc
辛勤的蜜蜂永远没有时间的悲哀。——布莱克 1️⃣🐝🏎️ One Billion Row Challenge(1BRC):用 Java 把 10 亿行跑到飞起的那一次如果你还记得第一次用 Java 处理海量数据的震撼,那么 1BRC 一定会让你再次血液加速。它的仓库描述这么写:“The One Billion Row Challenge — A fun exploration of how quickly 1B rows from a text file can be aggregated with Java”。这不是一个普通的练习题,而是一场关于现代 Java 极限性能的集体冒险:把一个包含 10 亿行的文本文件在最短时间里按站点聚合,输出每个站点的最小值、平均值和最大值。 仓库主页:gunnarmorling/1brc 官方介绍与博客:One Billion Row Challenge README 永久链接(信息来源):README.md@db06419 默认分支:main 许可协议:Apache License 2.0 状态提示(摘自 README)...

阿超
我的名字叫阿超 年龄25岁 家在北京市 职业是软件开发 每天最晚也会在八点前回家 不抽烟 酒浅尝辄止 晚上十二点上床 保证睡足八个小时 睡前写一篇博客 再做二十分钟俯卧撑暖身 然后再睡觉 基本能熟睡到天亮 像婴儿一样不留下任何疲劳和压力 就这样迎来第二天的早晨 健康检查结果也显示我很正常 我想说明我是一个不论何时都追求内心平稳的人 不拘泥于胜负 不纠结于烦恼 不树立使我夜不能寐的敌人 这就是我在这社会的生活态度
Follow Me公告
This is my Blog