SpringBoot-常用注解-Spring03
@Configration和 @Bean
@Configration->beans标签
@Bean ->bean标签
id=方法名|注解中的name属性(指定后优先级更高)
class = “方法的返回结果
package com.example.firstspringboot.config;
import com.example.firstspringboot.entity.User;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration //代表当前类是个配置类
public class UserConfig {
@Bean //构建1个实例,放到spring容器中
public User user() {
User user = new User();
user.setId(1);
user.setName("荣荣");
return user;
}
/*
<beans> @Configuration
<bean id="user" class="com.example.firstspringboot.entity.User>
</beans>
*/
}
启动类注解@SpringBootApplication
@SpringBootApplication是个组合注解
@SpringConfigration就是@Configration注解 代表启动类就是一个配置类
@EnableAutoConfiguration 帮你实现自动装配,springbooot工程启动时,运行一个SpringFactoryLoader类,加载位于META-INF下/spring factories的配置类(已经开启的)通过springfactoriesLoader中的load方法,for循环一个个加载
好处:无序编写大量整合信息只需要按照springboot提供好的约定去整合
坏处:加入了starter依赖,需要填写必要配置信息
手动关闭@SpringBootApplication(exclude = QuartzAutoConfiguration.class)
@ComponentScan
相当于<context:component-scan basePackage=“包名”/>
<