Spring Boot
文章平均质量分 67
小小大侠客
用技术改变世界,用代码改变命运!
展开
-
Spring Boot的@Async注解有哪些坑需要避免
SpringBoot的@Async注解为异步编程提供了极大的便利,但在使用时必须注意其背后的代理机制和具体实现细节。它可以将标注的方法从调用者的线程中分离出来,另起一个新线程执行,从而避免阻塞调用者的线程,提高系统的并发能力和响应速度。问题:默认情况下,SpringBoot会使用一个简单的SimpleAsyncTaskExecutor,这个执行器不是真正的线程池,可能会导致性能问题。原因:这是因为Spring的代理机制,只有通过代理对象调用时注解才生效,而类内部的自调用不会经过代理对象。原创 2024-06-04 10:11:08 · 942 阅读 · 0 评论 -
如何在Spring Boot中创建自定义的SpringEvent增强组件
SpringBoot是一款基于Spring框架的轻量级开发框架,它提供了大量的自动配置选项,简化了Spring应用的开发。在Spring生态系统中,事件驱动开发是一种常见的设计模式,用于解耦各个组件之间的关系,提高系统的扩展性和可维护性。:发布事件的对象,通常是Spring的应用上下文(ApplicationContext)。:事件是应用中发生的重要事情,通常是一个继承自ApplicationEvent的类。:监听并处理事件的对象,通常是实现了ApplicationListener接口的类。原创 2024-05-27 10:52:43 · 407 阅读 · 0 评论 -
Spring Boot 启动流程
Spring Boot 是一个基于 Spring 框架的快速开发框架,它简化了 Spring 应用的初始搭建和开发过程。Spring Boot 应用通常有一个主类,作为应用的入口点。例如,如果项目中包含了 spring-boot-starter-web,则会自动使用 Tomcat 作为内嵌服务器。Spring Boot 的自动配置是基于条件注解实现的。Spring Boot 会根据应用类型创建相应的应用上下文。最后,Spring Boot 会刷新应用上下文,启动所有注册的 bean,并发布应用启动事件。原创 2024-05-24 10:32:00 · 371 阅读 · 0 评论 -
说说SpringBoot自动配置原理
在selectImports方法内部,AutoConfigurationImportSelector会加载spring.factories文件,并基于条件注解(如@ConditionalOnClass、@ConditionalOnProperty等)来过滤和选择需要自动配置的类。Spring Boot的自动配置原理可以概括为:通过读取jar包中的配置信息,并根据项目依赖和条件注解自动配置应用程序所需的bean,从而减少手动配置的工作量。那是不是不管三七二十一,都给它创建出来呢?而是放在下面这个文件下。原创 2024-05-09 10:45:55 · 368 阅读 · 0 评论 -
SpringBoot项目启动成功后,我们需要在某个组件里提前执行一些操作应该怎么做?
Spring官方推荐首先使用@PostConstruct注解方法进行初始化,但在某些特定情况下,实现InitializingBean接口可以提供更多控制,例如当需要访问Spring的特定功能或在初始化过程中处理Spring特定的异常时。也就是说,static变量的生命周期与类的加载和卸载相同,而被@Value注解的变量的生命周期则由Spring容器的bean生命周期管理决定。@PostConstruct注解的方法在Bean构造函数执行后和所有依赖注入完成后调用,这确保了所有必需的依赖都被设置。原创 2024-05-06 14:18:36 · 940 阅读 · 0 评论 -
SpringBoot常见的52个注解
用于定义Bean初始化顺序,可以用在@Configuration、@Component、@Service、@Repository等注解以及@Bean方法上。用于定义配置类或Bean仅在特定的Profile激活时才会生效,可以用在@Configuration类或@Bean方法上。用于定义在特定Bean存在或不存在时的条件配置,可以用在@Configuration类或@Bean方法上。用于定义在特定类存在或不存在时的条件配置,可以用在@Configuration类或@Bean方法上。原创 2024-04-19 14:17:25 · 574 阅读 · 0 评论 -
SpringBoot+自定义注解+AOP高级玩法打造通用开关
将redis中开关置为1。原创 2023-10-17 16:42:08 · 287 阅读 · 0 评论 -
Spring MVC及Spring Boot项目中RestTemplate的运用
第一、RestTemplate简介RestTemplate是Spring提供的用于访问Rest服务的客端, RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率,所以很多客户端比如Android或者第三方服务商都是使用RestTemplate请求restful服务。第二、Spring MVC项目中RestTemplate的使用1、使用RestTemplate之前,需要初始化其实例。创建一个工具类如下,初始化实例后,可以通过注解注入调用类中。import or原创 2021-03-09 19:21:22 · 841 阅读 · 0 评论 -
Spring Boot以注解方式整合Dubbo
1.本文旨在总结Spring Boot和Dubbo的整合方式,对于Spring Boot和Dubbo的具体介绍不再赘述,如有兴趣可参考文章:Spring Boot 2 入门案例和Dubbo中Provider与Consumer搭建以及Dubbo的Admin管理界面2.代码示例第一、新建一个Maven工程DubboServer作为服务端。a.新建DubboServer.javapackage...原创 2020-04-30 18:05:00 · 448 阅读 · 0 评论 -
Spring Boot集成Mybatis
第一、新建maven工程,修改pom.xml文件引入jar包在pom.xml文件中增加如下配置<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <ve...原创 2019-09-08 22:07:59 · 115 阅读 · 0 评论 -
Spring Boot整合Junit单元测试
第一、新建maven工程,修改pom.xml,引入Jar包。具体参考https://blog.csdn.net/xiaoxiaodaxiake/article/details/100609147第二、新建测试类:com.shi.test.SpringBootJunitTest.javapackage com.shi.test;import org.junit.Test;import or...原创 2019-09-08 21:48:12 · 338 阅读 · 0 评论 -
Spring Boot整合spring-data-jpa案例
第一、SpringData JPA是什么?SpringData JPA只是SpringData中的一个子模块,JPA是一套标准接口,而Hibernate是JPA的实现,SpringData JPA 底层默认实现是使用Hibernate。第二、编码1.新建Maven工程,在pom.xml中增加SpringData JPA的依赖。 <dependency> <grou...原创 2019-09-08 11:24:17 · 576 阅读 · 0 评论 -
Spring Boot 2 入门案例
第一、Spring Boot的诞生虽然Spring的组件代码是轻量级的,但它的配置却是重量级的。第一阶段:XML配置在Spring 1.x时代,使用Spring开发满眼都是XML配置的Bean,随着项目的扩大,我们需要把XML配置文件放到不同的配置文件夹里,那时需要频繁的在开发的类和配置文件之间进行切换。第二阶段:注解配置在Spring2.x时代,随着JDK1.5带来的注解支持,Spri...原创 2019-09-07 22:36:55 · 189 阅读 · 0 评论