@Component和@Bean的区别

@Component、@Bean都是使用注解的形式来定义bean,从功能上讲是一样的

@Component(包括@Service、@Repository)用于自动检测和使用类路径扫描注解,自动装配

bean。注解类和bean 之间是存在隐性的映射关系的,一个类对应一个注册的bean-

这种方式对于需要逻辑处理是有弊端的,纯粹是一种声明式注册 bean的手段

@Bean用于注册bean的,是一种显示标明的bean

注册bean与类型是完全分开进行管理的,便于统一管理操作

同时这个注解是标识在方法上的,我们也可以利用这个提供对象的方法来进行其他业务的扩展功能性更强

从二者对比来看:

@Component 使用较多,因为使用更简单

@Bean注册 bean的形式更加的集中,可以将这个配置类(@Configuration类)当做早期的纯xml 配置文件,如果对于某个类的bean的生产比较麻烦,需要做N多预处理工作,那么使用@Bean形式比较妥当

相关推荐
鸽鸽程序猿4 分钟前
【项目】【抽奖系统】抽奖
java·spring
冬男zdn11 分钟前
优雅处理数组的几个实用方法
前端·javascript
GoogleDocs40 分钟前
基于[api-football]数据学习示例
java·学习
Kaze_story40 分钟前
Vue第四节:组件化、组件生命周期
前端·javascript·vue.js
卓码软件测评42 分钟前
第三方软件验收评测机构【Gatling安装指南:Java环境配置和IDE插件安装】
java·开发语言·ide·测试工具·负载均衡
yuzhiboyouye1 小时前
web前端开发自测清单
前端
妮妮分享1 小时前
H5获取定位的方式是什么?
java·前端·javascript
Billow_lamb1 小时前
MyBatis-Plus 的 条件构造器详解(超详细版)
java·mybatis
CoderYanger1 小时前
动态规划算法-两个数组的dp(含字符串数组):48.最长重复子数组
java·算法·leetcode·动态规划·1024程序员节
weixin_439930641 小时前
前端js日期计算跨月导致的错误
开发语言·前端·javascript