类是什么时候被加载的

在 Spring Boot 应用中,类的加载时机主要2个阶段

一、启动阶段

  1. 当应用启动时,JVM 首先加载包含 main 方法的启动类。这个类通常会通过 @SpringBootApplication 注解标识为 Spring Boot 应用的入口点。
  2. Spring Boot 的自动配置机制开始起作用。它会扫描类路径,查找满足特定条件的类,并加载相关的配置类。例如,根据依赖的库和配置文件,加载数据库连接配置、Web 服务器配置等。
  3. Spring 容器开始初始化。这个过程中,会加载被 @Component@Service@Repository@Controller 等注解标识的类,以及其他配置类中定义的 bean。这些类的加载是为了构建 Spring 容器中的 bean 定义,并为后续的实例化做准备。

二、运行阶段

  1. 在应用运行过程中,当某个特定的功能被调用时,如果需要加载特定的类,Spring 容器会根据需要动态加载这些类。例如,当一个控制器方法被调用,而该方法涉及到一个尚未加载的服务类时,Spring 会加载这个服务类并创建实例。
  2. 如果应用中使用了动态代理或 AOP(面向切面编程),相关的类可能会在切面被应用时加载。例如,当一个方法被代理以添加事务管理或日志记录等功能时,代理类会在方法调用时被加载。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值