首页 > 其他分享 >2.ioc注入

2.ioc注入

时间:2023-02-18 21:24:15浏览次数:25  
标签:byType Autowired 对象 bean 查找 ioc 注入

setter注入需要无参构造创建对象然后通过set方法赋值

 

required=true就是说这个bean必须在xml里配置了,不然就抛出异常 the bean property must be populated at configuration time

 

 

自动装配:@Autowired注入首先根据byType注入,当拥有类型相同数量大于1时在根据byName注入。

当注入容器存在多个同一类型的对象时,就是根据byName进行装配

当注入在IoC容器中该类型只有一个时,就通过byType进行装配

 

@Autowired是默认通过byType的方式,当匹配到多个同类型时,使用ByName进行装配

autowire默认按类型查找,如果存在多个对象再按名字查找。resource默认按名称查找,如果找不到再按类型查找。他这里讲错了

Autowired先类型后名字(需要Qualify注解配合),Resource先名字后类型

 

 

 

 

 

 

好神奇!没这个注解要使用 bean标签进行bean注入,而使用注解直接就好了

这个name必须是public的

 

 

 

 

注意:1. 如果开启包扫描,加载配置类以后就可以通过反射拿到配置类中的对象了,

2. @Bean只写在方法上,返回的是一个对象,但一般不获取已经在容器中的对象

 3. @Bean 可以用于通过方法获取数据库连接池Connection这种对象

 

 

 

 

 

 

 

本身就是为了,在不改变Host类的基础上,使用Proxy类对Host进行代理与功能增强

设计模式本质就是代码写多了才弄出来的,这个模式就是为了在不改变原有代码的情况下对这个方法进行增强了

代理模式是指代理类对被代理对象的功能进行拓展,修饰器模式是对对象本身的功能进行增强

 

标签:byType,Autowired,对象,bean,查找,ioc,注入
From: https://www.cnblogs.com/lcy2021/p/17133636.html

相关文章

  • 【Spring IOC】【五】容器源码解析- 属性填充populateBean
    1 前言好了,我们这篇文章讲解下populateBean,也就是bean的属性填充,并不仅仅是设置值,还有很多事情要做的。比如你的属性值类型转换、表达式解析等,关于属性填充的一些知识,本......
  • floor报错注入浅析
    常见报错语句:selectcount(*),(floor(rand(0)*2))xfrominformation_schema.tablesgroupbyx;1通过concat函数连接注入语句与floor(rand(0)*2)函数,实现将注入结果与报......
  • Spring的注入方式
    Spring的注入方式目录Spring的注入方式一、前言二、常见的三种注入方式2.1、Field注入2.2构造器注入2.3setter注入三、构造器注入的好处四、答疑一、前言Spring框架对......
  • 使用@PostConstruct 注解解决@Autowire注入对象为空
    在spring中,对象声明周期为构造器->@Autowired->@PostConstruct有初始化用到@Autowired对象的需求,可以在初始化方法加上@PostConstruct注解    ......
  • Spring IOC DI OOP @Transactional
    ......
  • 002.初始话Ioc容器——基于构造方法实例化对象(Bean)
    1.三种XML实例化Bean的配置方式  1.基于构造方法实例化对象  2.基于静态工厂实例化对象  3.基于工厂实例方法实例化对象2.详细讲解  2.1  基于构造方......
  • Springboot项目中注入bean失败的问题排查
    Springboot项目中注入bean失败的问题排查这是一个Spring常见的问题,下面我们从测试方法和普通方法出问题两个角度来下如何解决测试方法先查看目录是否有误测试类的包名......
  • Spring的配置、依赖注入、Bean的自动装配及注解开发
    Spring配置1.别名alias设置别名,为bean设置别名,可以设置多个别名<!--设置别名:在获取Bean的时候可以使用别名获取--><aliasname="userT"alias="userNew"/>......
  • 【Spring IOC】【三】容器源码解析- 创建原始Bean
    1 前言上一文,我们讲解了getBean里的一些过程,这节我们详细来讲一讲创建bean,也就是createBean。createBean默认的实现类是AbstractAutowireCapableBeanFactory,createBean......
  • 依赖注入
    方式:向一个类中传递数据的的方式有几种?  普通方法(set方法)  构造方法依赖注入描述了在容器中建立bean与bean之间依赖关系的过程,如果bean运行需要的是数字或是字符串......