springboot中VO属性别名
发表于|更新于
|浏览量:
路是脚踏出来的,历史是人写出来的。人的每一步行动都在书写自己的历史。——吉鸿昌
使用springboot进行开发时,使用的VO有时候会更改别名,如果我们直接更改属性名,就需要把引用的地方都改了,较为麻烦
springboot默认使用jackson进行序列化/反序列化参数
所以我们可以使用com.fasterxml.jackson.annotation.JsonProperty注解

给我们的VO起一个别名,然后我们请求就可以使用别名keyword

我们发送请求后debug可以看到确实接收到了

相关推荐
2023-12-18
quartz工具类含倒计时
一个人有无成就,决定于他青年时期是不是有志气。——谢觉哉 分享一个自己写的Quartz工具类,可以轻松实现倒计时功能: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778import cn.hutool.core.date.DateUtil;import lombok.SneakyThrows;import lombok.experimental.UtilityClass;import org.dromara.streamquery.stream.core.collection.Lists;import org.quartz.*;import org.quartz.core.jmx.JobDataMapSupport;import org.quartz.impl.StdSchedulerFactory;import org.quart...
2024-02-29
satoken+webflux获取header以及body
你若要喜爱自己的价值,你就得给世界创造价值。——歌德 代码如下: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980import cn.dev33.satoken.context.SaHolder;import cn.dev33.satoken.context.SaTokenContextForThreadLocalStorage;import cn.dev33.satoken.reactor.context.SaReactorSyncHolder;import cn.dev33.satoken.reactor.filter.SaReactorFilter;import cn.dev33.satoken.router.SaRouter;import jakarta.annotation.Resource;import org.j...
2022-03-04
replace、replaceAll、replaceFirst
一年好景君须记,最是橙黄橘绿时。——苏轼 聊聊这仨很常用的函数 我相信很多人也跟我一样也有个误区,错把replace当成replaceFirst,把replaceAll当成replace 实际上,replace函数会替换掉满足字符串中所有出现过第一个参数中的值的地方 例如: 1234 String string = "ruben love strawberry"; String replace = string.replace("r", "");// uben love stawbey 如果我们只需要替换第一处,则需要使用replaceFirst 例如: 1234 String string = "ruben love strawberry"; String replaceFirst = string.replaceFirst("[A-Za-z0-9]", "");// uben love strawberry 并...
2021-04-08
mp数据源加密
不宝金玉,而忠信以为宝。——《礼记》 在开发中,我们难免可能会担心数据库账号密码泄露 我们可以使用mybatis-plus自带的数据安全保护进行加密 123456789101112public static void main(String[] args) throws Throwable { // 生成 16 位随机 AES 密钥 String randomKey = AES.generateRandomKey(); // 随机密钥加密 String url = AES.encrypt("jdbc:mysql://localhost:3306/ruben?autoReconnect=true&zeroDateTimeBehavior=CONVERT_TO_NULL&useUnicode=true&characterEncoding=utf-8&useSSL=false&nullCatalogMeansCurrent=true&serverTimezone=Asia/Shanghai&...
2021-08-23
mybatis-plus的select函数
学问是异常珍贵的东西,从任何源泉吸收都不可耻。——阿卜·日·法拉兹 在mybatis-plus的条件构造器中如果我们想要过滤字段,则可以使用select函数 官方文档介绍如下: 这里分为两类,其中第一个例子:select("id", "name", "age")可以用于一般Wrapper 如果是lambdaQueryWrapper,则需要使用lambda,例如 1Wrappers.lambdaQuery(UserDetail.builder().build()).select(UserDetail::getUsername,UserDetail::getAvatar) 第二类,我们可以按照某种规则去匹配 例如这里我只要password以外的字段 写法如下: 1Wrappers.lambdaQuery(UserDetail.builder().build()).select(tableFieldInfo -> !tableFieldInfo.getProperty().equals(PropertyNamer...
2025-03-04
MP批插优化
我虽不富甲天下,却拥有无数个艳阳天和夏日。——梭罗 看到这篇文章 https://mp.weixin.qq.com/s/NkP6kND6wQZqTd_gIuaYAw MyBatisPlus 高并发场景下的ID生成优化:分布式序列号服务实践突破分布式ID的性能瓶颈某电商平台在促销活动期间面临订单创建峰值压力,使用MyBatisPlus默认的雪花算法生成ID时,出现以下问题: 时间戳精度不足导致ID碰撞率升高(单机QPS超5000时) 服务器时钟回拨引发的批量插入失败 长ID对存储空间的额外消耗(18位 vs 传统13位) 压力测试显示,在高并发场景下单节点生成ID的吞吐量上限为1.2万/秒,成为系统瓶颈。通过改造ID生成机制,我们实现了单机5万/秒的ID生成速度,同时将存储空间压缩40%。 混合式ID生成架构设计技术方案对比 方案类型 吞吐量 碰撞概率 时钟依赖 实现复杂度 原生雪花算法 1.2万/s 0.01% 强依赖 低 UUIDv4 无限 理论无碰撞 无依赖 低 数据库序列 800/s 无 无 中 混合分段...

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