私は2つの凝集体、Employee
とCompany
を持っています。 Employee
はCompany
への参照をUUID
で保存します。ドメイン駆動型設計を実装する際に、工場で他の集約を参照できますか?
私は従業員を作成したい場合は、私は会社のIDとそれを提供する必要があります。
new Employee(name, companyId)
私の周り私の頭を取得することはできませんどのようなクライアント場合Company
のid
を取得する方法です会社名のみを提供します。言い換えれば、私はこの出来事を参照してください。今、私はEmployee
を作成するためにCompany
集約への依存性を導入してきたように
Employee buildEmployee(String name, String companyName) {
Company company = companyRepository.findByName()
return new Employeee(name, company.getGUID())
}
何かが、私には間違って感じています。さらに悪いのは、これらが2つのマイクロサービスであった場合、私は会社名を取得するために休憩をとる必要があるからです。
このカップリングを回避する方法はありますか、またはエンティティが正しくモデル化されていませんか?