构造函数注入和 Setter 注入的区别

2024年8月29日 | 1 分钟阅读

构造函数注入和 Setter 注入之间有许多关键的区别。

  1. 部分依赖:可以使用 Setter 注入,但不能通过构造函数。 假设一个类中有 3 个属性,具有 3 个参数的构造函数和 setter 方法。 在这种情况下,如果您只想传递一个属性的信息,则只能通过 setter 方法。
  2. 覆盖:Setter 注入会覆盖构造函数注入。 如果我们同时使用构造函数和 setter 注入,IOC 容器将使用 setter 注入。
  3. 更改:我们可以通过 setter 注入轻松更改值。 它不像构造函数那样总是创建一个新的 bean 实例。 因此,setter 注入比构造函数注入更灵活。