@Component和@Bean的区别

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

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

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

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

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

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

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

从二者对比来看:

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

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

相关推荐
菜鸟冲锋号3 分钟前
问题:增量关联(实时同步新数据) 这个场景中,如果hudi_pay 变更了一条数据,hudi_order_pay_join 结果的数据会跟着变化吗
服务器·前端·数据库
阿拉斯攀登6 分钟前
深入微服务配置中心:Nacos注册中心的实操细节
java·微服务·云原生·springcloud
贩卖黄昏的熊6 分钟前
typescript 快速入门
开发语言·前端·javascript·typescript·ecmascript·es6
f***24116 分钟前
springboot系列--自动配置原理
java·spring boot·后端
路边草随风17 分钟前
python 调用 spring ai sse mcp
人工智能·python·spring
拾柒SHY19 分钟前
XSS-Labs靶场通关
前端·web安全·xss
前端婴幼儿25 分钟前
前端主题切换效果
前端
一 乐26 分钟前
水果销售|基于springboot + vue水果商城系统(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端
JIngJaneIL27 分钟前
校园任务平台|校园社区系统|基于java+vue的校园悬赏任务平台系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·校园任务平台
三省同学30 分钟前
SpringBoot 项目LOG_PATH_IS_UNDEFINED问题完整解决方案
java·spring boot·后端