次のクラスがある場合:
package com.example;
import org.springframework.beans.factory.annotation.Required;
public class Customer
{
private Person person;
public Person getPerson() {
return person;
}
@Required
public void setPerson(Person person) {
this.person = person;
}
}
このように、Spring で @Required タグがフィールドではなくセッターに関連付けられているのはなぜですか?
package com.example;
import org.springframework.beans.factory.annotation.Required;
public class Customer
{
@Required
private Person person;
public Person getPerson() {
return person;
}
public void setPerson(Person person) {
this.person = person;
}
}
依存関係は、プロパティが設定されていることですが、何かが欠けていない限り、そのプロパティまたはフィールドにデータを入力する特定のセッターに結び付ける必要はありません。