spring boot推荐使用Java配置,通过@Configuration注解的类即为配置类。
导入其他java配置
你不需要把所有的配置都放入由@Configuration注解的单个类中,可以通过@Import注解导入其他配置类。也可以通过@ComponentScan注解自动扫描所有的Spring组件,包括@Configuration注解的配置类。
导入XML配置
如果你必须使用基于XML的配置,我们推荐你仍然以@Configuration注解的类为主配置,然后通过@ImportResource注解来加载XML配置文件。
自动配置
所谓的自动配置就是Spring Boot试图依据你添加的Jars依赖自动配置的你的Spring应用。开启自动配置需要在你的一个配置类上添加@EnableAutoConfiguration或者@SpringBootApplication注解。
注:推荐在主配置类中启动自动配置。
自动配置是无侵入的,任何时候你都可以定义你自己的配置以取代自动配置的具体部分,例如,如果你在配置中加入了@DataSource注解的bean,那么就会覆盖默认的已嵌入的数据库。
如果你需要知道已应用的自动配置,可以在启动你的项目时使用–debug选项,这将启用DEBUG日志,会在控制台上记录一个自动配置的报告。
如果你发现被应用的某些具体的自动配置的类不是你想要的,你可以使用@EnableAutoConfiguration的exclude属性来禁用它们:
import org.springframework.boot.autoconfigure.*;
import org.springframework.boot.autoconfigure.jdbc.*;
import org.springframework.context.annotation.*;
@Configuration
@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class})
public class MyConfiguration{
}
如果要排除的类不在classpath路径下,可以使用@EnableAutoConfiguration的excludeName属性指定排除,但需要指定全名。