- 博客(20)
- 收藏
- 关注
原创 工作中用MQ的10种场景
为什么明明直接调用接口就能完成的功能,非要引入MQ这么个"中间商"?直到经历了系统崩溃、数据丢失、性能瓶颈等一系列问题后,才真正理解了MQ的价值。在深入具体场景之前,我们先来思考一个基本问题:为什么要使用消息队列?系统间的直接调用:引入消息队列后:接下来我们将通过10个具体场景,带大家来深入理解MQ的价值。在我早期参与的一个电商项目中,订单创建后需要通知多个系统:这种架构存在严重问题:紧耦合:订单服务需要知道所有下游服务单点故障:任何一个下游服务挂掉都会导致订单创建失败性能瓶颈:同步调用导致响应时间慢
2025-09-04 09:35:10
809
原创 一文搞定!Swagger 注解中 @ApiIgnore 的超实用妙用
《Swagger隐身术:@ApiIgnore使用指南》 摘要:@ApiIgnore是Swagger提供的"隐身符",用于隐藏接口文档中的特定内容。主要适用于三类场景:内部接口、调试接口和敏感操作。通过标注在类、方法或参数上,可实现不同粒度的隐藏效果。实战中建议采用"隐藏+鉴权"双保险策略,如结合@PreAuthorize确保安全。需注意其局限性:仅隐藏文档不阻断访问,可通过分环境生成文档实现角色差异化展示。该注解能有效净化接口文档,保持前端可见内容的整洁性,是Swag
2025-09-02 11:11:21
338
原创 SpringBoot接口幂等性方案:4种策略+代码实战,告别重复提交
/ 秒@Aspect@Component@Autowired// ① 计算请求体摘要// ② 第一次:setIfAbsent 返回 truereturn Result.fail("**重复请求**");try {// 异常时释放,允许重试throw e;// 使用注解:1.MD5把任意长度报文压缩成 32 位,冲突概率极低。2.保证原子性,异常回删避免误杀。3. 注解 + AOP零侵入,老接口 1 行代码即可拥有幂等。
2025-09-02 10:12:43
1085
原创 一篇文章解决购物车数据前后端登录前后同步的问题
这个实现使用了纯前端技术模拟了前后端数据存储和同步的过程,实际项目中需要将localStorage替换为真实的API调用。需要实现一个购物车系统,在用户未登录时将数据存储在前端,登录后自动同步到后端,并提供一致的用户体验。登录后:数据存储在localStorage的"serverCart_用户名"键中(模拟服务器存储)未登录时:数据存储在localStorage的"localCart"键中。用户未登录时,购物车数据存储在前端localStorage。在未登录状态下添加商品到购物车,数据存储在前端。
2025-09-02 10:10:45
194
原创 2025 年,程序员必备的软件工具 Top 20
Fiddler / Charles / Wireshark 抓包调试工具+网络协议分析。Homebrew / Chocolatey 包管理工具,快速安装各类软件。Typora / PicGo / mdnice 文档写作工具组合。测试工具,包括接口调试、自动化测试、文档生成、压力测试。专业的集成开发环境,提供 IDEA 等全家桶软件。可以隔离开发环境,多环境开发必备。更好的终端体验,支持多标签页、主题自定义。Notion / 语雀,团队协作文档编写。企业微信 / 飞书,团队沟通协作。
2025-08-18 09:24:20
983
原创 RocketMQ Windows环境下启动导致C盘爆满原因及解决办法
rocketmq取的默认路径是user.home路径,也就是用户的根目录,一般存储放在跟路径下的 /store目录。文件可能会较大查看源码也是如此:这里会有一个问题,RocketMQ很容易导致C盘空间不够,在使用过程中,创建一个主题默认就是要创建1G的文件,很可能会导致出问题。所以在windows上容易导致C盘空间吃满。
2025-08-01 11:00:34
381
原创 过来人的警告!!!!千万不要在......
是一个专门用于构建 Spring Cloud Gateway 服务的依赖。它引入了 WebFlux(基于 Reactor 的响应式编程模型)作为其 Web 层。另外:禁止在网关模块添加web依赖。)的微服务模块中引入了。
2025-07-31 20:59:14
496
原创 10 种超赞的 MyBatis 写法!
foreach元素的属性主要有item,index,collection,open,separator,close。针对最后一条,我们来看一下官方说法:注意 你可以将一个 List 实例或者数组作为参数对象传给 MyBatis,当你这么做的时候,MyBatis 会自动将它包装在一个 Map 中并以名称为键。List 实例将会以“list”作为键,而数组实例的键将是“array”。所以,不管是多参数还是单参数的list,array类型,都可以封装为map进行传递。
2025-07-31 19:23:43
1005
原创 json与Java对象的转换
/ 将json数组转为list。// JSON 字符串转对象。// JSON 字符串转对象。// 对象转 JSON 字符串。// 对象转 JSON 字符串。
2025-07-23 20:07:07
290
原创 jsencrypt密码加密
算法是否推荐特点MD5 + Salt❌ 不推荐安全性低,易被破解❌ 不推荐比 MD5 好,但仍不推荐用于密码BCrypt✅ 推荐安全、慢速、适合密码PBKDF2✅ 推荐安全,可配置迭代次数Argon2✅✅ 强烈推荐现代密码哈希标准。
2025-07-22 10:31:28
938
原创 图片的上传
前端:表单提交商品信息,包含图片上传。后端:接收上传的图片,保存到服务器指定路径或云存储。保存商品信息到数据库,包含图片链接。页面展示上传后的商品列表(带图片)。
2025-07-16 11:41:27
398
原创 HashMap底层原理(超详细)
因为存储的数据,不是按顺序存的,是按hash值当下标存储的,每个对象的hash值不同,下标也就不固定,所以是无序的。
2025-06-05 11:15:16
6251
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅