
Spring Boot
文章平均质量分 90
冰糖心书房
Hi:欢迎来到"冰糖心书房",人个目前就职于一家外企业500强公司担任架构师一职,在这里我会着重分享我多年来在Java开发领域的实战经验和心得体会。从企业级项目架构设计、高并发处理到微服务架构的落地实施。
展开
-
Spring Boot 项目中application.yml 和 bootstrap.yml 文件的区别
中的配置作用于 Application Context。Bootstrap Context 的配置会影响 Application Context 的创建和初始化。文件都是 Spring Boot 项目中用于配置应用程序的 YAML 或 Properties 文件,但它们在。你可以将 Bootstrap Context 理解为 Spring Boot 启动的。,负责加载和管理应用程序中的所有 Bean、处理请求、执行业务逻辑等。中的配置主要作用于 Bootstrap Context,而。原创 2025-03-11 09:51:16 · 1556 阅读 · 0 评论 -
Spring Boot 项目中慢SQL优化方案
Spring Boot 项目中慢 SQL 优化是一个重要的性能优化环节。(MySQL 8.0 已移除)原创 2025-03-07 09:34:50 · 1119 阅读 · 0 评论 -
Spring Security是如何实现自定义认证的
使用浏览器开发者工具或 HTTP 客户端 (如 Postman) 查看 HTTP 请求和响应,以诊断认证问题。Spring Security 允许通过自定义认证机制来处理各种身份验证场景。调整 Spring Security 的日志级别 (例如,设置为。使用 Spring Security 配置类来启用自定义认证。方法中设置断点,逐步调试认证流程。),以获取更详细的输出。这是认证逻辑的核心。原创 2025-02-28 12:53:35 · 1092 阅读 · 0 评论 -
什么是分布式事务?
在微服务架构、SOA (Service-Oriented Architecture) 或分布式系统中,一个业务操作可能需要调用多个服务或操作多个数据库。如果以上三个服务分别部署在不同的服务器上,并且使用不同的数据库,那么就需要使用分布式事务来保证这三个操作要么全部成功,要么全部失败。例如,如果库存扣减成功,但支付失败,那么就需要回滚库存的扣减,否则就会出现超卖的情况。分布式事务的目标是确保所有参与的操作要么全部成功(提交),要么全部失败(回滚),以维护数据的一致性和完整性。一个典型的电商场景:用户下单。原创 2025-02-27 17:12:35 · 924 阅读 · 0 评论 -
Spring Boot 项目中,JDK 动态代理和 CGLIB 动态代理的使用
在 Spring Boot 项目中,JDK 动态代理和 CGLIB 动态代理都是实现 AOP (面向切面编程) 的重要技术。它们的主要区别在于代理对象的生成方式和适用范围。在实际开发中,Spring AOP 会自动选择合适的代理方式。如果没有特殊需求,可以使用默认配置。如果需要强制使用 CGLIB 动态代理,可以设置。默认情况下,Spring AOP 会根据目标类是否实现了接口来选择使用 JDK 动态代理或 CGLIB 动态代理。属性来强制使用 CGLIB 动态代理。原创 2025-02-24 09:48:40 · 1471 阅读 · 0 评论 -
Spring Boot 多模块怎么统一管理
在 Spring Boot 中,多模块项目是一种常见的架构模式,尤其适用于构建大型、复杂的应用程序。然而,多模块项目也带来了一些管理上的挑战,例如依赖版本管理、构建配置管理、模块间的依赖关系管理等。Spring Boot 多模块项目的统一管理是构建大型、可维护应用程序的关键。通过使用父模块、依赖管理、插件管理、属性管理等技术,可以有效地解决多模块项目带来的管理挑战,提高开发效率、降低维护成本,并最终构建出更加健壮和可扩展的 Spring Boot 应用。原创 2025-02-23 13:20:44 · 1138 阅读 · 0 评论 -
Springboot 中如何使用Sentinel
使用 Spring Cloud Alibaba Sentinel 在 Spring Boot 中实现限流、熔断降级是非常简单的。 通过添加依赖、配置 Sentinel 控制台地址、定义受保护的资源、配置规则,你就可以快速为你的 Spring Boot 应用增加一层强大的保护屏障,提升系统的稳定性和容错能力。 Sentinel 提供的可视化控制台和丰富的特性,也使得流量控制和容错管理更加便捷高效。原创 2025-02-11 15:26:04 · 1727 阅读 · 1 评论 -
Spring Boot @Import注解的作用
是 Spring Framework 中一个非常重要的注解,它提供了一种灵活的方式来导入和注册 Bean 定义到 Spring 上下文。方法,该方法返回一个字符串数组,包含需要导入的配置类或 Bean 定义类的完全限定名。的 Bean 定义并将其注册到容器中。的不同用法和注意事项,可以更好地利用 Spring Boot 的特性,构建可维护和灵活的应用程序。是一个非常强大的注解,可以用来组织和模块化 Spring 配置,并提供条件化的配置能力。注解的方法,并将这些方法返回的对象作为 Bean 注册到容器中。原创 2025-02-09 10:27:02 · 1062 阅读 · 0 评论 -
SpringBoot中为什么要用DeferredImportSelector
它允许在所有配置类处理完毕后,再根据其他配置类的信息选择性地导入一些配置类。会根据 Spring 容器中的条件 (例如,是否存在某个 Bean,或者某个配置属性的值) 来过滤这些自动配置类,只选择符合条件的自动配置类进行导入。解决了这个问题,它的执行会被延迟到所有常规配置类都被处理之后,此时它可以访问到所有配置类的信息,从而做出更明智的导入决策。会在配置类解析的早期阶段执行,这意味着在选择要导入的配置类时,它可能无法访问完整的配置信息,导致无法做出最佳选择。来选择需要导入的自动配置类。原创 2025-02-09 10:09:13 · 908 阅读 · 0 评论 -
Spring Boot 和Tomcat的关系
Spring Boot 和 Tomcat 的结合可以让我们能够快速、方便地开发、部署和运行 Java Web 应用,既支持内嵌运行模式,又允许在传统的 Web 服务器上进行部署,提供了灵活性和高效性。原创 2025-02-08 10:45:49 · 1803 阅读 · 1 评论