@Component和@Bean的区别

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

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

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

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

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

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

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

从二者对比来看:

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

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

相关推荐
步步为营DotNet2 分钟前
深入理解IAsyncEnumerable:异步迭代的底层实现与应用优化
java·服务器·数据库
qq_479875435 分钟前
protobuf[1]
java·开发语言
装不满的克莱因瓶7 分钟前
【Java架构 搭建环境篇三】Linux安装Git详细教程
java·linux·运维·服务器·git·架构·centos
运维@小兵10 分钟前
使用Spring-ai实现同步响应和流式响应
java·人工智能·spring-ai·ai流式响应
CoderYanger11 分钟前
A.每日一题——3432. 统计元素和差值为偶数的分区方案
java·数据结构·算法·leetcode·1024程序员节
Geoking.12 分钟前
JDK 版本与 Java 版本的关系
java·开发语言
huohuopro15 分钟前
java基础深度学习 #1
java·开发语言·java基础
Zaralike27 分钟前
Java设计模式
java·开发语言·设计模式
Rysxt_39 分钟前
Vue文件下载功能完整指南:从基础实现到进阶实战
前端·javascript·vue.js
一 乐1 小时前
智慧养老|基于springboot+小程序社区养老保障系统设计与实现(源码+数据库+文档)
java·前端·数据库·vue.js·spring boot·后端·小程序