首页 > 其他分享 >什么是@Component,@Component的作用是什么

什么是@Component,@Component的作用是什么

时间:2024-03-08 09:12:13浏览次数:27  
标签:容器 Java Spring 什么 Component Bean 注解 作用

一、在Spring中,Bean是指什么?

如果我们想搞清楚@Component是什么,我们就需要先搞清楚在Spring框架中Bean指的是什么!!!
1、在Spring框架中,Bean是指由Spring容器初始化、装配和管理的Java对象。Bean可以是任何普通的Java类,它的创建和管理都由Spring容器负责。

2、由于Spring的IOC(Inverse of Control,控制反转)和DI(Dependency Injection,依赖注入)机制,Bean不需要显式地创建和维护依赖关系,而是由Spring容器在启动时扫描和创建Bean,并在需要的时候注入其依赖关系。这种方式使得组件之间的耦合度降低,提高了应用的可维护性和可测试性。

二、什么是@Compontent,@Compontent的作用是什么?

1、@Component是Spring框架中用于声明一个普通的Java类为Bean的注解(组件),从而由Spring容器进行管理和注入。在Spring中,Bean是指由Spring容器初始化、装配和管理的Java对象,而@Component注解则是用于声明一个普通的Java类为Spring中的对象(Bean)。

2、具体来说,@Component注解可以用于标注任意普通的Java类,常见的包括Service、Controller、Repository等等。当Spring容器扫描到被@Component标记的类时,会将其创建(实例化)并注入到Spring容器中,以供其他组件调用、依赖。

3、除了@Component之外,Spring还提供了专门的注解来声明Bean的类型,如@Service标注服务层、@Controller标注控制层、@Repository标注数据访问层,这些注解都是@Component注解的衍生。

标签:容器,Java,Spring,什么,Component,Bean,注解,作用
From: https://www.cnblogs.com/liyunxi/p/18060265

相关文章

  • 为什么将Jenkins部署在k8s上
    传统Jenkins的Master-Slave方案的缺陷Master节点发生单点故障时,整个流程都不可用了每个Slave节点的配置环境不一样,来完成不同语言的编译打包等操作,但是这些差异化的配置导致管理起来非常不方便,维护起来也是比较费劲资源分配不均衡,有的Slave节点要运行的job出现排队等待,而有......
  • MYSQL意向锁的作用
    结论:当一个事务要对表进行锁定时,首先会获取相应的意向锁。其他事务可以通过检查意向锁来判断是否有其他事务在更细粒度的级别上对表进行了锁定。这有助于避免冲突和提高并发性能在讨论此问题之前我们应当明确两个前提:Innodb存储引擎支持行锁和表锁共存行锁与表锁之间互不冲突......
  • 内部UI自动化测试培训之什么是UI自动化测试
    UI自动化测试相关内容:内部UI自动化测试培训之什么是UI自动化测试内部UI自动化测试培训之python基础内部UI自动化测试培训之unittest基础内部UI自动化测试培训之seleniumUI测试工具概念介绍自动化测试最初由麦克科恩(MikeCohn)(敏捷开发的创始人之一)在他的著作《Succ......
  • Spring框架Bean对象的五个作用域
    ​ 一、前言:Bean对象简介在Spring项目中,那些由Spring IoC容器所管理的对象,称为bean。简单地讲,bean就是由Spring容器初始化、装配及管理的对象,除此之外,bean就与应用程序中的其他对象没有什么区别了。 而bean定义以及bean相互间的依赖关系将通过配置元数据来描述。上一段描述......
  • VUE GRID WITH COMPONENT排序
    父组件:<!--Anexampleofcreatingareusablegridcomponentandusingitwithexternaldata.--><scriptsetup>importDemoGridfrom'../components/Grid.vue'import{ref}from'vue'constsearchQuery=ref('')......
  • 动态表单是什么?如何开发?
    在开发表单时常见的有两种做法:一种是通过配置代码的方式,而另一种则是通过组件组合的方式。通过配置代码生成的表单,我们称之为动态表单(DynamicForm),而通过组件组合生成的表单,我们称之为普通表单。​对于动态表单来说,我们只需要定义一套统一的配置模板,之后新增表单或者输入项时,只......
  • 什么是ConcurrentHashMap?不同JDK下ConcurrentHashMap的区别?
    什么是ConcurrentHashMap?不同JDK下ConcurrentHashMap的区别?  一、HashMap线程安全  我们知道,在并发情况下,使用HashMap会有线程安全的问题,那么如何避免呢?  想要避免Hashmap的线程安全问题有很多办法,比如改用HashTable或者Collections.synchronizedMap  但是,这两者......
  • promethues 的label和metrics有什么区别:labels 用于数据监控指标的筛选,到底要监控哪
    在Prometheus中,Label和Metrics是两个核心概念,它们在监控和度量方面扮演不同的角色:Label(标签): labels用于数据监控指标的筛选,到底要监控哪些指标到promethuesLabels是用于标识和区分时间序列数据的键值对。每个时间序列数据都可以带有多个不同的标签,用来描述该数据的......
  • Blazor笔记-Introduce Blazor component
    更新记录注意:非教程。纯笔记,日常查询用的。需要教程的小伙伴找几本书看看即可哈哈,有Vue基础的话非常快,概念都是通的。非工作需要不建议深入学习Blazor,深入Vue吧,用的多,哈哈。完整目录地址:https://www.cnblogs.com/cqpanda/p/17596348.html点击查看2024年3月7日发布。2023......
  • Blazor笔记-Component stages/life cycle
    更新记录注意:非教程。纯笔记,日常查询用的。需要教程的小伙伴找几本书看看即可哈哈,有Vue基础的话非常快,概念都是通的。非工作需要不建议深入学习Blazor,深入Vue吧,用的多,哈哈。完整目录地址:https://www.cnblogs.com/cqpanda/p/17596348.html点击查看2024年3月7日发布。2023......