1. ホーム
  2. spring

[解決済み] なぜ春になると静電場が自動化されないのか?

2022-11-01 10:10:48

質問

Spring Beanの静的インスタンス変数を自動配線できないのはなぜですか。私はこれを達成するために別の方法があることを知っているが、なぜ我々はそれを以下の方法で行うことができないのかを知りたいです。

@Autowired
public static Test test;

どのように解決するのですか?

静的フィールドを使用すると、静的メソッドを使用することを推奨しているからです。そして、静的メソッドは邪悪です。依存性注入の主な目的は、コンテナがあなたのためにオブジェクトを作成し、それらを配線するようにすることです。また、テストを容易にします。

静的メソッドを使い始めると、オブジェクトのインスタンスを作成する必要がなくなり、テストがより困難になります。また、あるクラスの複数のインスタンスを作成し、それぞれに異なる依存性を注入することはできません(フィールドが暗黙的に共有され、グローバルな状態を作成するため - これも悪です)。