Ho un progetto di maven che contiene alcune entità che sono memorizzate in un database. Lo scopo di questo progetto è di gestire le informazioni personali, gli utenti, i luoghi, ecc. Questo progetto può funzionare da solo.
Ho anche un progetto che dipende dal primo che importa i dati nel database. Ma è più di una semplice importazione quindi ha bisogno di ulteriori informazioni per queste entità. Queste informazioni sono necessarie solo se sono importati i dati altrimenti non è impostato.
Il problema
Il problema è che non so come "collegare" queste informazioni alle entità nel primo progetto senza dichiararle lì. Non avrebbe senso dichiararli lì perché gli y non appartengono a loro e si limiterebbero a mescolare due domini. Mettere entrambi i progetti in uno non è un'opzione perché entrambi sono già grandi e in continua crescita.
Approccio al problema
Un approccio a cui stavo pensando è di usare un'altra entità che contiene tutte le informazioni necessarie nel progetto di importazione e associarla con l'entità originale. Funzionerebbe quasi, ma creerebbe un terribile modello di database che non creerei mai se non usassi un ORM.
Sto iniziando a pensare che se dovessi usare un ORM anche a causa dell'ORM che uso (Hibernate) ho dovuto anche apportare alcune modifiche al design in peggio solo perché l'ORM non lo supporta (usando il Modello di oggetto nullo o principio di separazione dell'interfaccia, ad esempio).