現在、ドメイン駆動型開発(DDD)を学習しています。いくつかのチュートリアルを見て、私は古い学校のプロジェクトをSOAからDDDにモデル化したいと思っています。私は、秘書管理(学生と教授のCRUD)、教授タスク(学生のためのタスクの作成)、学生タスク(アップロードタスクソリューション)の3つの境界条件を確認しました。名前は適切に選択されていないため、これはアプリケーションの概要に過ぎません。ドメイン駆動型開発でhibernate内の複数のバインドされたコンテキスト間でエンティティを共有する
重要なのは、名前、アドレス、電子メールなどの管理とidとnameを含むprofessor-taskの1つの2つのProfessorエンティティが存在することです。
私の質問は、これをhibernateとJPAを使ってどのようにモデル化しますか?アプリケーションのすべてのエンティティを持つパッケージを作成し、JPAアノテーションで注釈を付け、必要なすべてのフィールドを持つパッケージを作成し、すべてのバインドされたコンテキストで、そのバインドされたコンテキストで必要なフィールドのみを含む他のクラスを作成することを考えました。リポジトリは、その特定のクラスからJPAエンティティにマップする必要があります。もっと良い解決策はありますか?
ありがとうございます。
3つのバウンドコンテキストをすべて同じアプリケーション内にデプロイする予定ですか、それとも、それぞれ独自のデプロイ可能な、おそらくマイクロサービスと見なされますか? – Naros
同じアプリケーションで、異なるパッケージまたは異なるモジュールに展開します –
なぜ、各BCで個々のクラスをマッピングしないのですか? BCは技術的境界でもあり、適切なツールが選択される。 – plalx