spring 引用类型自动装配

4 篇文章 0 订阅

Spring通过自动装配实现引用类型的注入,主要有以下几种方式:

1、在xml《bean》中使用autowire属性,即可完成:

      <bean id = "student" class="com.model.student" autowire="byName" ></bean>

      autowire中有三种方式注入:

      byName: 通过名字(bean的id名称)去找IOC容器中符合要求的bean进行自动装配;

      byType:通过类型(bean的class类型)去找,但是如果IOC容器中有同一个类型的2个bean,就会报错,使用前提注入类型只有一个bean;

      constructor:通过构造器进行匹配,识别构造器中的类型,再去找对应的bean,和byType类似

注意:如果想把所有的bean都设置为自动装配,在xml文件头设置:default-autowire="byName",自动装配可以减少代码量,但是会降低程序的可阅读性,使用需谨慎

2、再程序中通过注解方式进行:

  • 通过@component(“beanID”)方式:在xml文件中先开启扫描配置:<context:component-scan base-package="com.model.student"></context component-scan>;然后在Java类中添加@component("id") ;Spring在启动的时候,会根据base-package设置的路径去扫描对应得文件,如果有@component注解,则将其装配到IOC容器中
  • 使用component注解虽然方便,但是,对所有的文件都起作用,意义不明确,所以对其进行细分: 
  • dao层使用@Repository注解
  • service层使用@Service注解
  • Controller层使用@Controller注解
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Spring bean的自动装配是指在Spring容器中,Spring会根据一定的规则自动为bean注入它所依赖的其他bean的属性。其中,有三种常见的自动装配方式。 第一种是根据名称进行自动装配,即根据属性的名称在容器中查找对应的bean进行注入。这种方式称为ByName自动装配。 第二种是根据类型进行自动装配,即根据属性的类型在容器中查找对应的唯一bean进行注入。这种方式称为ByType自动装配。需要注意的是,所有被注入的bean的类必须保持唯一,并且与自动注入的属性类型一致。 第三种方式是通过注解实现自动装配,即使用注解来标识需要进行自动装配的属性。通过配置相应的注解,Spring会在容器中查找匹配的bean并进行注入。这种方式更加灵活和方便。 总结来说,Spring自动装配可以通过属性名称、属性类型或注解来实现,使得开发者无需手动进行属性注入,提高了开发效率和代码的可维护性。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Spring中Bean的自动装配](https://blog.csdn.net/weixin_44107140/article/details/119154162)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值