- 博客(564)
- 收藏
- 关注
原创 SpringBoot启动过程详解
这是一个扩展功能,callRunners(context, applicationArguments) 可以在启动完成后执行自定义的run方法;实现 ApplicationRunner 接口实现 CommandLineRunner 接口接下来我们验证一把,为了方便代码可读性,我把这2种方式都放在同一个类里面/*** 自定义run方法的2种方式*/@Component@Override。
2023-05-12 09:39:03
3289
1
原创 Superpowers 与 OpenSpec 使用指导手册
它不是要求你每一步都手动敲命令,而是让 AI 在合适的时候按这些 skills 工作。问题在于:如果你已经让 Superpowers 写计划并执行,就不要再让 OpenSpec 同时执行第二套计划。目标:让你知道什么时候用 Superpowers,什么时候拉 OpenSpec 进来,以及两者一起用时怎么不打架。OS: /opsx:verify 检查实现是否符合 specs/tasks/design。如果你想让需求、设计、任务全部先落成文件,再按文件执行,就让 OpenSpec 主导。
2026-06-18 17:21:04
221
原创 AI Agent 工程化工作流全解析(Superpowers + OpenSpec )
TRAE /spec:自动生成三阶段文档——spec.md(项目范围/北极星文档)、tasks.md(任务拆解)、(验收清单),核心解决「明确需求、对齐预期」的问题;OpenSpec 对应能力(生成 proposal + design + spec + tasks 全量文档)、(归档 Spec 实现增量迭代);核心逻辑:/spec 是 TRAE 对 OpenSpec 「规范驱动开发」理念的轻量化实现,无需复杂配置即可快速生成标准化 Spec 文档,适合中小型项目快速落地。OpenSpec 是「规」
2026-06-18 16:54:47
332
原创 Spring Boot 项目集成 Redisson 实现延迟队列的详细过程
方案实现难度实时性可靠性分布式支持推荐场景定时任务轮询低低中有限简单、低频业务Redisson 延迟队列中中高好分布式、业务量中等、场景标准MQ 延迟队列高高高极好高并发、大量异步、核心任务场景Redis 过期监听低不确定低差非核心场景,缓存状态变更类任务。
2026-05-08 09:42:12
382
原创 Java 内存溢出(OOM)排查实战指南:从复现到 MAT Dump 分析
JVM 在需要分配内存时,如果堆、元空间或直接内存耗尽,就会抛出 OOM。:堆空间不足:长时间 Full GC 效果仍然不好Metaspace:类元数据过多:堆外内存耗尽无论哪种类型,本质都是内存资源无法满足当前分配请求。Java OOM 排查并不复杂,只要记住以下步骤:启动 JVM 时开启 OOM Dump复现问题并生成.hprof文件HistogramDominator Tree(最重要)根据引用链定位到具体代码修复并验证效果。
2026-02-27 12:53:59
301
1
原创 Flowable 数据库的表解释
是历史数据存储表,主要记录流程实例的生命周期信息。通过字段如END_TIME_和DURATION_,可以分析流程的运行效率。字段如和支持流程与外部系统的集成与关联。多租户支持通过TENANT_ID_实现,便于隔离不同租户的数据。是 Flowable 流程引擎的历史表,用于记录流程实例中每个活动节点的执行历史数据。它详细描述了流程实例中的每个活动节点的执行时间、持续时间、关联的用户任务等信息。记录流程实例中每个活动节点的历史数据,包括时间、类型、处理人等信息。主要用于流程跟踪与分析。
2026-01-20 18:18:04
837
原创 工作流引擎Camunda详解
当流程走到用户任务、时间等待节点等,事务会先将数据持久化到数据库,这个状态被称为“事务的边界“。如果不使用,默认就会回滚到成功的那个节点位置。有时候我们想修改一个运行中的流程,如果另起一个新流程,就不容易统计之前那个流程的数据,如果将所有版本都放一个流程中,通过流程ID去查询历史数据,会让统计变得很方便。指同一个审批节点设置多个人,如ABC三人,三人会同时收到审批,需全部同意之后,审批才可到下一审批节点。指同一个审批节点设置多个人,如ABC三人,三人会同时收到审批,只要其中任意一人审批即可到下一审批节点。
2026-01-12 10:07:43
270
原创 SQL如何实现递归查询_SQL递归查询的实现方法
SOAP、WSDL(WebServicesDescriptionLanguage)、UDDI(UniversalDescriptionDiscovery andIntegration)之一, soap用来描述传递信息的格式, WSDL 用来描述如何访问具体的接口, uddi用来管理,分发,查询webService。是SQL标准的一部分,但具体实现和一些特有功能在不同的数据库系统中还是有些区别,这就像是方言,核心意思一样,但表达方式略有不同。关键字,只要CTE的定义是递归的,它就会自动识别。
2025-12-26 09:12:29
933
原创 LangChain4j框架学习
【Java+AI】一篇文章带你学会LangChain4j框架(上)【Java+AI】一篇文章带你学会LangChain4j框架(下)
2025-12-16 18:32:51
308
原创 Spring AI Alibaba - 企业级AI应用开发框架
Playground示例:https://github.com/springaialibaba/spring-ai-alibaba-examples/tree/main/spring-ai-alibaba-playground。示例仓库:https://github.com/springaialibaba/spring-ai-alibaba-examples。官方文档:https://java2ai.com/docs/1.0.0.2/get-started/chatbot。
2025-12-16 18:10:19
334
原创 深入探讨 TaskDecorator —— Spring 中线程上下文传递的利器
它可以理解为一个“任务装饰器”,允许开发者在任务执行前后插入一些自定义逻辑,如线程上下文的传递、初始化等。特别是在使用线程池时,线程会被复用,如果没有正确清理上下文信息,后续任务可能会使用到上一个任务的上下文。比如在身份认证和权限管理系统中,可以确保用户的身份信息在异步任务中得以传递。的一个子类,可以在创建子线程时,将父线程的上下文信息自动传递给子线程。在异步任务中传递用户的权限信息,确保在异步任务执行时能正确识别用户身份和权限。在复杂的异步任务中,通常需要传递一些上下文信息,如数据库事务、用户会话等。
2025-10-15 17:20:50
649
原创 Spring Boot集成Kafka全攻略:从基础配置到高级实践
https://blog.csdn.net/qq_42773076/article/details/148695369?ops_request_misc=%257B%2522request%255Fid%2522%253A%25226f0033fb31fad33d3c2c797252aeeecd%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=6f0033fb31fad33d3c2c797252aeeecd&
2025-09-18 09:08:47
248
原创 SpringBoot集成Flyway
无论是小型项目还是大型企业级应用,Flyway 都能助力开发者轻松应对数据库架构的演进。它支持多种数据库,如常见的 MySQL、Oracle、SQL Server、PostgreSQL 等,这使其在不同的技术栈中都能大显身手。Flyway 本质上是一个开源的数据库迁移工具,
2025-07-31 08:51:04
229
原创 SpringBoot + MinIO + kkFileView
今天带大家通过SpringBoot + MinIO + kkFileView实现了任意文件的在线预览功能,不用写一行代码就能实现,大家如果在项目中遇到这类需求的话可以尝试下。
2025-07-22 13:53:47
1158
原创 SpringBoot集成Quartz + 表解释
springboot使用yml配置时可直接给工具类注入。,获取的是默认的属性配置,yml不会生效,需使用。在使用yml自动配置时,配置自定义的。
2025-05-27 15:15:22
1250
原创 SpringBoot 集成 Ehcache 实现本地缓存
SpringBoot 集成 Ehcache 实现本地缓存_springboot ehcache-CSDN博客
2025-05-07 17:41:30
303
原创 Arthas线上监控诊断
Arthas 是一款线上监控诊断产品,通过全局视角实时查看应用 load、内存、gc、线程的状态信息,并能在不修改应用代码的情况下,对业务问题进行诊断,包括查看方法调用的出入参、异常,监测方法执行耗时,类加载信息等,大大提升线上问题排查效率。当你遇到以下类似问题而束手无策时,Arthas 可以帮助你解决:这个类从哪个 jar 包加载的?为什么会报各种类相关的 Exception?我改的代码为什么没有执行到?难道是我没 commit?分支搞错了?
2025-04-29 21:31:37
879
原创 RocketMQ分布式消息队列
MQ全称为Message Queue,即消息队列 ,是一种提供消息队列服务的中间件,也称为消息中间件,是一套提供了消息生 产、存储、消费全过程的软件系统,遵循FIFO原则。 RocketMQ是一个统一消息引擎、轻量级数据处理平台。
2025-04-25 10:14:16
1095
原创 通过 Request 请求获取真实 IP 地址以及对应省份城市
通过 Request 请求获取真实 IP 地址以及对应省份城市 - 凡223 - 博客园
2025-04-15 09:39:58
216
原创 pgsql:关联查询union(并集)、except(差集)、intersect(交集)
pgsql:关联查询union(并集)、except(差集)、intersect(交集)_pgsql except-CSDN博客
2025-04-10 16:06:44
793
原创 Tomcat调优
在 Spring Boot 微服务架构中,单个实例的性能瓶颈通常不在于并发连接数(如200个并发连接),而是在于单个实例能够处理的请求速率和资源使用情况(如CPU、内存、I/O等)。如果你的单个微服务实例在单机上能够处理200个并发连接而没有达到性能瓶颈,那么增加更多的实例理论上可以提升整体的吞吐量和可用性。在考虑多实例部署之前,务必确保单实例的性能已经达到了瓶颈,并且通过适当的负载测试验证多实例部署后的性能提升。同时,合理的资源分配、服务发现与注册、以及有效的监控是确保多实例部署成功的关键因素。
2025-03-17 16:37:48
736
原创 Elasticsearch理解及问题解决
图例1: 图例2:Java从入门到架构师_Elasticsearch-CSDN博客(优质)重学Elasticsearch第6章 : SpringBoot整合RestHighLevelClient_es集群resthighlevelclient springboot-CSDN博客Springboot中使用Elasticsearch(部署+使用+讲解 最完整)_spring boot elasticsearch-CSDN博客Springboot引入elasticsearch-rest-high-leve
2025-02-18 14:35:03
623
原创 转换树结构数据
java中把一个list转tree的三种方法——工具类_java list转tree-CSDN博客java如何将一个list转换为树形结构 java list转tree_jiecho的技术博客_51CTO博客
2025-02-08 11:26:55
259
原创 IDEA常见50个实用插件+idea提效设置
Idea常见50个插件汇总(超级实用)_idea 常用插件-CSDN博客新款 IDEA 神级插件!效率提升 50 倍!-腾讯云开发者社区-腾讯云
2025-02-06 17:55:43
221
原创 SpringBoot Starter 通用接口加密组件(防篡改)+ RequestBodyAdvice和ResponseBodyAdvice原理
防篡改:参考博客:(防篡改)
2025-01-18 09:36:26
722
原创 接口防篡改+防重放攻击
nonce的意思是仅一次有效的随机字符串,要求每次请求时该参数要保证不同。实际使用用户信息+时间戳+随机数等信息做个哈希之后,作为nonce参数。如果没有,则创建这个key,把这个key失效的时间和验证timestamp失效的时间一致,比如是60s。如果有,说明这个key在60s内已经被使用了,那么这个请求就可以判断为重放请求。去redis中查找是否有key为nonce:{nonce}的string。
2025-01-18 09:31:17
3799
原创 Maven项目中pom文件中的dependencyManagement,dependencies,dependency有什么区别?
Maven项目中pom文件中的dependencyManagement,dependencies,dependency有什么区别?_pom dependencymanagement-CSDN博客
2025-01-13 16:00:13
244
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅