@Autowired和@Reference的区别

@Autowired和@Reference的区别

1.@Autowired是由Spring框架提供的,@Reference是由JDK提供的

2.查找顺序不同@Autowired先根据type查找再根据name查找,而@Reference相反

3.支持的参数个数不同,@Autowired支持1个参数,@Reference支持7个参数

4.依赖注入用法不同@Autowired支持Set注入和构造器注入,@Reference支持Set注入和属性注入

@Bean和@Compment注解的区别

@Component 和 @Bean 是两种使用注解来定义bean的方式

@Component通常用来表示一个类为一个组件,表示它需要被Spring扫描到IOC容器中

@Bean通常用在@Configration中。用在方法上面,表示将方法的返回对象注册到IOC容器中

@Bean可以自定义Bean的创建和初始化过程,@Bean注解更加灵活,可以在方法中为对象设置属性值 ,SpringBootStarter机制就运用了@Bean注解

@EnableAutoConfiguration注解的作用

@EnableAutoConfiguration的作用是启动SpringBoot的自动配置机制。它会根据项目中引入的类库,框架以及其他的一些条件来自动配置应用程序的运行环境和各种功能模块。

@EnableAutoConfiguration使程序的开发更加简洁高效

Spring Boot Starter

Spring Boot Starter是一组依赖的集合。每个Starter都包含了一组相关依赖和自动配置类。通过引入Start依赖,开发者可以实现特定功能的快速启动和配置。

@Bean
@ConditionalOnProperty(value = "spring.jdbc.datasource.type",havingValue = "druid")
 @Bean
 @ConditionalOnProperty(value = "spring.jdbc.datasource.type",havingValue = "c3p0")

在bean下添加@ConditionalOnProperty注解,当type为havingValue的值则执行相应的方法返回对象。

1.spring启动后扫描WEB-INF文件夹下的spring.factories文件,将自定义的Configuration类装配到SpringIOC容器中。

2.引入starter会把starter相应功能的所有的jar包依赖都导进来,避免手动配置,简化开发 。引入的starter组件对应的功能所需要的外部配置文件,都可以在当前项目的application.properties配置就行了   

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值