开发框架
文章平均质量分 91
源码级别解析各类开发框架,了解运行原理,掌握使用技能。
猩火燎猿
互联网大厂架构,知识传递,互通有无!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Spring cloud config详解
摘要:Spring Cloud Config是一个微服务配置管理工具,包含ConfigServer(配置中心)和ConfigClient(配置客户端)。ConfigServer从Git等仓库拉取配置并提供REST接口,客户端启动时自动获取配置。支持多环境配置、动态刷新(通过/actuator/refresh或Spring Cloud Bus)、配置加密和安全认证。建议生产环境中采用高可用部署、配置分层管理和敏感信息加密。原创 2025-12-02 03:00:00 · 2179 阅读 · 2 评论 -
spring bean 初始化顺序深度详解
摘要:Spring Bean的生命周期包含实例化、属性注入、Aware接口回调、初始化及销毁等阶段。核心流程为:实例化→属性赋值→Aware回调→BeanPostProcessor前置处理→初始化(@PostConstruct→InitializingBean→init-method)→BeanPostProcessor后置处理→就绪使用→销毁阶段。其中BeanPostProcessor实现AOP代理等增强,三级缓存解决单例循环依赖。原创 2025-11-27 14:01:47 · 762 阅读 · 0 评论 -
spring cloud 配置使用
配合 Kubernetes、Docker 部署 Spring Cloud 微服务,实现自动扩缩容和自愈。Spring Cloud Alibaba 提供了 Sentinel,支持服务限流、熔断、降级。可通过配置中心或数据库动态变更路由规则,结合自定义 Predicate 实现灰度流量分流。配合 Spring Cloud Bus,实现配置文件变更自动推送到所有微服务。用于微服务间广播配置刷新、事件通知等,常见于配合 Config 使用。自动为请求打上 traceId、spanId,实现服务间调用链路追踪。原创 2025-11-24 16:00:24 · 88 阅读 · 0 评论 -
Spring Cloud和Spring Boot区别
SpringBoot与SpringCloud技术对比分析 摘要:本文系统对比了SpringBoot和SpringCloud两大技术框架。SpringBoot是简化Spring应用开发的框架,提供自动配置、内嵌服务器等功能,适用于单体应用快速开发。SpringCloud则是基于SpringBoot的微服务治理工具集,提供服务注册发现、配置中心、网关等分布式系统解决方案。两者协同使用时,SpringBoot作为微服务基础框架,SpringCloud实现服务治理,共同构建完整的微服务架构。文章详细对比了两者的功能原创 2025-11-24 10:20:33 · 194 阅读 · 0 评论 -
COLA使用配置
COLA架构是一种分层清晰的Java应用框架,核心包含四层结构:Client层(API接口)、Application层(用例编排)、Domain层(业务逻辑)和Infrastructure层(技术实现)。其特色包括CQRS模式、扩展点机制和事件驱动设计,支持通过@Extension注解实现业务插件化扩展。实践建议强调严格分层依赖控制(仅允许上层调用下层)、领域模型与技术实现分离,以及扩展点的合理使用。原创 2025-11-24 00:15:00 · 148 阅读 · 0 评论 -
Spring boot GraalVM 原生镜像支持详解
《SpringBoot3集成GraalVM Native Image指南》摘要: SpringBoot3原生支持GraalVM Native Image,通过AOT编译将Java应用转为本地可执行文件,实现毫秒级启动和低内存占用。关键配置包括:SpringBoot3.x依赖、Maven/Gradle插件配置及GraalVM22.3+环境搭建。构建方式支持容器镜像或本地二进制生成,需注意反射、动态代理等限制,可通过reflect-config.json手动补充元数据。原创 2025-11-17 12:01:47 · 1263 阅读 · 0 评论 -
Spring Boot 异步HTTP客户端配置使用
本文详细介绍SpringBoot中使用WebClient实现异步HTTP请求的完整方案。主要内容包括:1)通过spring-boot-starter-webflux引入依赖;2)WebClient的全局配置和高级连接池设置;3)GET/POST异步请求示例及并发请求处理;4)错误处理、超时设置和重试机制;5)文件上传下载、负载均衡集成等扩展功能;6)性能调优建议和常见问题解答。WebClient作为响应式非阻塞HTTP客户端,相比RestTemplate更适用于高并发微服务场景。原创 2025-11-17 11:55:25 · 666 阅读 · 0 评论 -
Spring Boot 的响应式编程
本文介绍了Spring Boot响应式编程的核心概念与实践。响应式编程是一种异步数据流编程范式,基于Spring WebFlux框架,通过Mono和Flux类型处理异步数据流。与传统的Spring MVC相比,响应式编程具有非阻塞、事件驱动等特点,更适合高并发场景。文章详细说明了响应式编程的基本用法、操作符、优势及适用场景,并指出实现响应式全链路的重要性。同时提供了常见问题的解决方案、性能优化建议和最佳实践,包括背压处理、异常处理和测试方法。原创 2025-11-17 11:49:38 · 1024 阅读 · 0 评论 -
Spring Boot 所有注解使用说明
本文系统介绍了SpringBoot开发中常用的核心注解及其应用场景,主要包含以下内容:1. 核心注解如@SpringBootApplication(组合了@Configuration、@EnableAutoConfiguration和@ComponentScan)等启动配置类注解;2. Bean管理相关注解包括@Component、@Service、@Repository等组件声明注解;3. 依赖注入相关注解如@Autowired、@Qualifier等;4. Web开发注解如@RestController原创 2025-11-17 10:30:43 · 995 阅读 · 0 评论 -
Spring MVC项目打包docker
本文详细介绍了如何将SpringMVC项目打包为War文件并部署到Docker容器中的完整流程。主要内容包括:构建War包、编写Dockerfile(基于Tomcat镜像)、构建Docker镜像、运行容器以及访问应用的基本步骤。还提供了常见扩展配置方案,如外部配置文件挂载、连接外部数据库、日志查看、镜像体积优化等实用技巧。针对生产环境部署,给出了JVM参数优化、时区设置、Docker Compose管理多服务等建议,并包含了完整的Dockerfile示例和常见问题排查方法。原创 2025-11-19 09:00:00 · 603 阅读 · 0 评论 -
Springboot打包docker详解
本文介绍了SpringBoot项目打包为Docker镜像的多种方法:1)传统Dockerfile构建;2)利用SpringBoot 2.3+内置buildpack;3)推荐的多阶段构建方法(可显著减小镜像体积)。文章详细说明了Dockerfile编写要点,包括基础镜像选择、JVM参数优化、健康检查配置等核心内容,并提供了生产环境最佳实践,如非root用户运行、配置分离、日志处理等。同时针对常见部署问题提供了解决方案,并特别介绍了与Kubernetes集成的建议。原创 2025-11-18 09:00:00 · 1305 阅读 · 0 评论 -
Springboot怎么打war包部署
SpringBoot项目部署到外部容器的关键步骤包括:修改pom.xml打包方式为war;添加Tomcat依赖并设置provided范围;主类继承SpringBootServletInitializer;使用mvn命令打包生成war文件;将war放入Tomcat的webapps目录启动。注意静态资源路径配置、多环境profile管理、依赖冲突排查等常见问题。与JAR部署相比,WAR部署更适合传统企业环境,但需要处理容器依赖和路径配置差异。原创 2025-11-17 09:00:00 · 794 阅读 · 0 评论 -
Springboot ClassNotFoundException常见原因及排查解决方案
摘要:本文系统分析了Java/Spring项目中常见的"类未找到"(ClassNotFoundException)问题,从依赖管理、打包配置、环境差异等多角度总结了8大原因,并提供详细的排查方案。重点包括:检查依赖引入与版本冲突、验证打包插件配置、排查类路径错误、处理动态加载问题等。文章通过典型案例解析常见误区和解决方法,推荐使用Maven/Gradle依赖分析工具,强调多模块项目依赖传递和生产环境一致性的重要性。原创 2025-11-15 01:31:02 · 1190 阅读 · 1 评论 -
springboot开发环境搭建
本文详细介绍了SpringBoot开发环境的搭建与项目创建流程。主要内容包括:1) 准备工作(JDK、IDE、构建工具安装);2) 三种创建项目方式(Spring Initializr、IDE创建、手动创建);3) 基础配置(主启动类、Controller、配置文件);4) 数据库集成(MySQL示例);5) 开发辅助功能(热部署、日志配置)。文章以循序渐进的方式,从环境准备到功能开发,完整展示了SpringBoot项目的创建过程,并提供了具体代码示例和配置说明,适合初学者快速上手SpringBoot开发。原创 2025-11-05 14:20:13 · 859 阅读 · 0 评论 -
Spring IOC源码实现
摘要:本文详细解析了Spring IOC容器的实现原理与源码结构。主要内容包括:1)Spring IOC核心流程:资源定位、Bean定义解析与注册、实例化、初始化和使用;2)核心类介绍(BeanFactory、ApplicationContext等);3)简化版IOC容器实现示例;4)源码阅读入口建议(DefaultListableBeanFactory等);5)深入讲解BeanDefinition注册、依赖注入、生命周期管理等核心机制,并提供了构造器注入的简化实现代码。原创 2025-11-04 10:34:15 · 727 阅读 · 0 评论 -
spring 事件驱动机制详解
Spring事件驱动机制基于观察者模式,包含事件(Event)、发布者(Publisher)和监听器(Listener)三种角色,实现业务解耦和异步处理。核心组件包括自定义事件(可继承ApplicationEvent或使用POJO)、ApplicationEventPublisher发布事件,以及通过@EventListener注解或实现ApplicationListener接口的监听器。支持异步处理、条件监听、事务事件等进阶功能,适用于用户注册、审计日志等场景。原创 2025-11-01 17:22:50 · 616 阅读 · 2 评论 -
Spring Boot Jpa配置使用详细说明
本文详细介绍了Spring Data JPA的使用方法,包括依赖配置、实体类定义、Repository接口设计和事务管理等内容。文章对比了Spring Boot和非Spring Boot项目的配置差异,讲解了实体关系映射、查询优化和性能调优技巧。同时提供了复杂查询实现、多数据源配置、乐观锁/悲观锁应用等进阶内容,并总结了实际开发中的最佳实践和常见问题解决方案。全文涵盖了从基础配置到高级特性的完整知识体系,为开发者使用JPA进行数据持久化提供了全面的技术指导。原创 2025-10-28 08:00:00 · 602 阅读 · 0 评论 -
Spring WebSecurityConfigurerAdapter配置使用
本文介绍了Spring Security的配置方法,重点说明从5.7版本开始推荐使用SecurityFilterChain替代过时的WebSecurityConfigurerAdapter。文章详细展示了旧版配置方式,包括添加依赖、创建配置类、重写认证和授权方法,并提供了内存用户、REST API、跨域CORS等常见场景的实现示例。同时介绍了新版基于Bean的配置方式,强调了对密码加密、异常处理等功能的支持。最后建议新项目采用SecurityFilterChain方式,复杂场景可结合官方文档实现。原创 2025-10-26 16:11:45 · 338 阅读 · 0 评论 -
SpringBoot多数据源及动态数据源配置
文章摘要: SpringBoot实现多数据源配置主要分为三个步骤:1)引入JPA和MySQL依赖;2)配置yml文件中不同数据源参数;3)创建主次数据源配置类,分别定义DataSource、EntityManagerFactory和TransactionManager。通过@Primary注解标注主数据源,@EnableJpaRepositories指定repository路径实现隔离。原创 2025-09-19 11:33:34 · 1237 阅读 · 0 评论 -
thymeleaf 深度解析
本文深入解析了Thymeleaf的核心架构与SpringBoot集成实现原理。主要内容包括:1)Thymeleaf的核心组件(TemplateEngine、Resolver、Parser等)及模板渲染流程;2)SpringBoot自动配置机制和默认参数;3)完整的请求处理调用链,从Controller到视图渲染的详细过程;4)关键源码节点分析,包括ThymeleafViewResolver、SpringTemplateEngine等核心类。文章通过流程图清晰展示了Thymeleaf在SpringMVC环境下原创 2025-09-17 14:23:22 · 940 阅读 · 0 评论 -
ORM-MAPPING框架-Mybatis
MyBatis是一个优秀的ORM框架,其核心原理包括:1)配置驱动,通过XML或注解定义SQL映射;2)动态代理机制自动生成Mapper实现;3)Executor执行SQL并处理结果映射。MyBatis采用插件机制扩展功能,通过拦截器动态代理核心组件(Executor等),在SQL执行前后进行增强。典型应用如PageHelper分页插件,通过ThreadLocal存储分页参数,拦截SQL并自动改写为分页语句,同时执行Count查询统计总数。原创 2025-09-16 19:31:03 · 1031 阅读 · 0 评论 -
详解spring-boot-starter-data-jpa
你不需要实现接口,Spring Data JPA会自动生成实现。原创 2025-09-13 09:48:44 · 1179 阅读 · 0 评论 -
详解spring-boot-starter-web
是 Spring Boot 提供的用于快速开发 Web 应用的 Starter。它封装了开发 Web 项目所需的常用依赖和自动配置,极大简化了 Web 项目的搭建流程。基于 Spring MVC 的 RESTful Web 服务开发。内嵌 Servlet 容器(Tomcat/Jetty/Undertow)。JSON 数据处理(默认集成 Jackson)。参数校验(Hibernate Validator)。静态资源处理。原创 2025-09-13 09:30:37 · 1399 阅读 · 0 评论 -
详解Spring Boot DevTools
自动重启:通过文件监控 + ClassLoader 隔离,实现 ApplicationContext 的快速重启。热部署:依赖 IDE 自动编译,将最新 class 文件加载进新的 ClassLoader。LiveReload:文件变化时通知前端浏览器刷新页面。属性调整:启动时自动加载适合开发环境的默认配置。远程调试:支持远程重启和调试(安全性需注意)。FileSystemWatcher 持续轮询 classpath 目录,发现变更后通知重启逻辑。原创 2025-09-13 06:49:08 · 1458 阅读 · 0 评论 -
详解Spring Boot Actuator
访问。访问。@Component@Override} else {// 这里可以调用数据库、第三方服务等// 示例访问,可见自定义状态。@Component在业务代码里调用,然后访问即可看到指标。,body 传递参数(Spring Boot 2.2+ 支持复杂参数)Spring Boot Actuator 是 Spring Boot 应用不可或缺的监控与管理工具。原创 2025-09-12 10:51:16 · 1483 阅读 · 1 评论 -
Spring Boot Starter
假设我们要开发一个自定义功能(比如:HelloService),实现自己的 Starter。Starter 只有依赖聚合,无 Java 代码。自动配置类必须注册到 spring.factories。@ConditionalOnClass/@ConditionalOnMissingBean 等注解实现条件装配。@EnableConfigurationProperties 支持属性自动绑定。最终用户只需引入 Starter 依赖即可,无需关心底层配置。原创 2025-09-12 09:52:03 · 1315 阅读 · 0 评论 -
Springboot源码详解
这些模块共同组成了 Spring Boot 的强大生态,极大简化了 Spring 应用的开发、测试、运维和部署过程。下一个章节将详细讲解每个模块的实现原因,以及使用技巧。自动配置模块,根据项目中的依赖和配置自动进行相关 Bean 的配置,极大简化了手动配置的工作量。提供应用的监控、管理和健康检查等功能,支持指标、审计、环境等信息的暴露。测试支持模块,集成了 Spring Test 相关内容。提升开发体验的工具模块,比如自动重启、热部署等。内置日志管理和配置,简化日志框架的集成。原创 2025-09-12 09:37:01 · 246 阅读 · 0 评论
分享