Spring Boot 提供的自动配置非常强大,某些情况下,自动配置的功能可能不符合我们的需求,需要我们自定义配置,这个时候就需要排除/禁用 Spring Boot 某些类的自动化配置了。
比如:数据源、邮件,这些都是提供了自动配置的,我们需要排除 Spring Boot 的自动化配置,交给我们自己来自定义,该如何做呢?
今天栈长给你介绍 4 种排除方式,总有一种能帮到你!
方法1
使用 @SpringBootApplication 注解的时候,使用 exclude 属性进行排除指定的类:
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, MailSenderAutoConfiguration.class})
public class Application {
// ...
}
自动配置类不在类路径下的时候,使用 excludeName 属性进行排除指定的类名全路径:
@SpringBootApplication(excludeName = {"org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration", "org.springframework.boot.autoconfigure.mail.MailSenderAutoConfiguration"})
public class Application {
// ...
}
这个注解集成了 @EnableAutoConfiguration 注解及其里面的参数,这个不用多解释了,具体看这篇文章:Spring Boot 最核心的 3 个注解详解。另外,关注Java技术栈,可以获取更多 Spring Boot 干货。
方法2
单独使用 @EnableAutoConfiguration 注解的时候:<

本文介绍了如何在Spring Boot中排除自动配置,包括使用@SpringBootApplication的exclude属性,@EnableAutoConfiguration的excludeName属性,@SpringCloudApplication以及在配置文件中设置spring.autoconfigure.exclude参数。掌握这些方法,能帮助你更好地自定义Spring Boot应用的配置。

1689

被折叠的 条评论
为什么被折叠?



