我目前正在學習域驅動開發(DDD)。看完一些教程後,我想將我的舊學校項目從分類型SOA建模爲DDD。我確定了3個有限的上下文(現在):祕書管理(學生和教授的CRUD),教授任務(爲學生創建任務)和學生任務(上傳任務解決方案)。名稱沒有正確選擇,這只是應用程序的概述。在域驅動開發中的休眠中的多個有界上下文之間共享實體
問題是將會有兩個不同的教授實體:一個在管理中將包含名稱,地址,電子郵件和其他東西,另一個在教授任務中將包含id和名稱。
我的問題是我將如何使用hibernate和JPA建模?我正在考慮創建一個包含應用程序中所有實體的包,使用JPA註釋進行註釋,每個包含所有必需的字段,並且在每個有界的上下文中都有其他類只包含該有界上下文中必需的字段。存儲庫必須從該特定類映射到JPA實體。有沒有更好的解決方案?
謝謝。
您是打算在同一個應用程序中部署所有3個有界的上下文,還是將每個都視爲可部署的,也許是微服務? – Naros
我會將它們部署在同一個應用程序中,不管是在不同的包中還是在不同的模塊中 –
爲什麼不在每個BC中映射單獨的類? BC也是一個技術邊界,其中應選擇適當的工具。 – plalx