通过构造函数进行依赖注入的示例

17 Mar 2025 | 阅读 2 分钟

我们可以通过构造函数注入依赖。 <bean> 的子元素 <constructor-arg> 用于构造函数注入。 这里我们将要注入

  1. 基本类型和基于字符串的值
  2. 依赖对象(包含的对象)
  3. 集合值等。

注入基本类型和基于字符串的值

让我们看一个简单的例子来注入基本类型和基于字符串的值。 我们在这里创建了三个文件

  • Employee.java
  • applicationContext.xml
  • Test.java
Employee.java

这是一个简单的类,包含两个字段 id 和 name。 这个类里有四个构造函数和一个方法。

applicationContext.xml

我们通过这个文件向 bean 提供信息。 constructor-arg 元素调用构造函数。 在这种情况下,将调用 int 类型的参数化构造函数。 constructor-arg 元素的 value 属性将分配指定的值。 type 属性指定将调用 int 参数构造函数。

Test.java

这个类从 applicationContext.xml 文件中获取 bean 并调用 show 方法。

输出:10 null


注入基于字符串的值

如果您没有在 constructor-arg 元素中指定 type 属性,则默认情况下将调用字符串类型构造函数。

如果您像上面那样更改 bean 元素,将调用字符串参数构造函数,输出将是 0 10。

输出0 10


您也可以传递字符串字面量,如下所示

输出:0 Sonoo


您可以同时传递整数字面量和字符串,如下所示

输出:10 Sonoo