spring核心技术之依赖注入DI

2023-12-29 18:29:55

[[toc]]

DI

  • Dependency Injection 依赖注入
  • 个解:DI是IOC的一种实现方式,bean文件定义数据,通过构造函数或set方式注入到java类中

构造函数注入

  • 数据部分:bean constructor-arg节点
  • 逻辑部分:构造函数注入
<bean id="helloService" class="io.spring.hello.HelloServiceImpl" />
<!-- helloPrinter bean定义 -->
<bean id="helloPrinter" class="io.spring.hello.HelloPrinter">
    <constructor-arg ref="helloService" />
    <constructor-arg value="aaa"/>
    <constructor-arg value="bbb"/>
    <constructor-arg value="123"/>
</bean>
// HelloPrinter java类定义 
public class HelloPrinter {
   
    private HelloService helloService;
    public HelloPrinter(HelloService helloService, String s1, String s2, int id) {
   
        this.helloService = helloService;
        System.out.println(s1 + s2 + id);
    }
    public void print() {
   
        System.out.println(helloService.sayHello());
    }
}

set方式注入: 最广泛

  • 数据部分:bean property节点
  • 逻辑部分:set方法注入

demo1: 简单类型

<!-- helloPrinter bean定义 -->
<bean id="helloPrinter" class="io.spring.hello.HelloPrinter">
    <property name

文章来源:https://blog.csdn.net/qubes/article/details/135293624
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。