闲话我也懒得讲了,上干货

在了解依赖注入之前,我认为我们需要去先了解一个重点: 到底什么才是注入? 注入有什么方式?

那么就spring框架来讲呐, 框架和Java一共为我们提供3种方式去注入,分别是set注入,构造方法注入,接口注入。接口注入不作要求,下面介绍前两种方式。

第一种: set注入

采用属性的set方法进行初始化,就成为set注入。给普通字符类型赋值.
那么, 上代码

public class User{
   private String username;
   public String getUsername() {
       return username;
   }
   public void setUsername(String username) {
      this.username= username;
   }
}

然后再XML中配置bean,property 中的name和value分别对应于User类中的属性username和给username所赋的值

废话少说, 上源码

<bean id="userAction"class="com.lsz.spring.action.User" >
    <property name="username" value="admin"></property>
</bean>

当然,set注入方式不单单可以给属性注入,也可以给list, 对象等注入, 这里不再赘述, 换汤不换药

第二种: 构造方法注入

上源码

public class User{
    private String usercode;
    public User(String usercode) {
        this.usercode=usercode;
    }
}

XML配置:

<bean id="userAction"class="com.lsz.spring.action.User">
    <constructor-argvalue="admin"></constructor-arg>
</bean>

注意: 构造函数有两个参数时当参数为非字符串类型时,在配置文件中需要制定类型,如果不指定类型一律按照字符串类型赋值。
当参数类型不一致时,框架是按照字符串的类型进行查找的,因此需要在配置文件中制定是参数的位置

Q.E.D.