私はエンティティAnimalを持っています。それは2人の子供を持っています:犬と猫。動物はmakeVoice()を使うことができますが、CatsとDogはそれを別々に行います。Spring jpaエンティティと動的ディスパッチ
ここでは、Hibernateを使ってDogのインスタンスを取得し、DogのmakeVoice()メソッドでHumanServiceを呼び出しますが、Spring Bean、Singletonです。これをどうやって設計すればいいですか? HumanServiceの注入/自動ワイヤリングはCat/Dogのポーリングのようですが、これは動的に解決されなければなりません。私は、この解決策を外部にデザインする方法を考えることができません。そのような方法はありますか?
'Dog'は' HumanService'を必要とする場合
HumanService
と通信して犬と一緒の方法でDogService
を、私はしないでくださいそれを注入すると "犬"を汚染するだろうと思う。その依存関係を注入しています! – Adam