springboot 启动加载类
时间: 2023-10-12 11:00:25 浏览: 102
在 Spring Boot 中,可以使用以下方式来加载类:
1. 自动配置:Spring Boot 自动配置会扫描 classpath 下的特定包并加载相应的类。
2. 组件扫描:通过在启动类上添加 `@ComponentScan` 注解,可以指定需要扫描的包。
3. 手动加载:可以在启动类中使用 `Class.forName()` 或者 `ClassLoader.loadClass()` 方法手动加载类。
4. Spring ApplicationContext:Spring Boot 启动时会自动加载 ApplicationContext,可以在 ApplicationContext 中注册需要加载的类。
需要注意的是,Spring Boot 启动时会加载很多类,如果需要自定义加载的类,应该优先考虑使用自动配置或者组件扫描的方式。
相关问题
springboot 启动加载指定类
在 Spring Boot 中,可以通过在 application.properties 或 application.yml 文件中设置 spring.autoconfigure.exclude 属性来排除不需要加载的自动配置类,例如:
```
spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
```
这将排除 Spring Boot 默认的 DataSource 自动配置类。
另外,还可以通过在启动类上添加 @EnableAutoConfiguration 注解的 exclude 属性来排除自动配置类,例如:
```java
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class MyApplication {
// ...
}
```
这将排除 DataSource 自动配置类。
Springboot启动加载流程
Spring Boot的启动加载流程可以概括为以下几个步骤:
1. 加载Spring Boot的核心配置文件
Spring Boot的核心配置文件是application.properties或application.yml,Spring Boot在启动时会加载这个文件,这个文件中包含了应用程序的配置信息。
2. 加载自动配置类
Spring Boot的自动配置是通过@Configuration注解和@Conditional注解实现的,Spring Boot在启动时会扫描classpath下的所有类,并加载所有被@Configuration注解标记的类。
3. 加载用户自定义配置类
当Spring Boot加载完自动配置类后,会加载用户自定义的配置类,这些类一般都是通过@Configuration注解和@Bean注解来实现的。
4. 加载Spring上下文
Spring Boot在加载完所有的配置类后,会通过AnnotationConfigApplicationContext创建Spring上下文,并将所有的配置类注册到Spring上下文中。
5. 执行Spring Boot的自动配置
Spring Boot在加载完Spring上下文后,会执行自动配置,自动配置的过程就是根据当前环境和用户配置信息来自动配置Spring应用程序。
6. 启动应用程序
最后,Spring Boot会启动应用程序,并将Spring上下文注入到应用程序中,应用程序就可以使用Spring容器中的Bean了。
阅读全文