Request for suggestions for architecture

Hi, I would like to have some suggestion regarding the architecture I should use.

  • I have a backoffice set of entities ENTITY_SET_A. Entities are loaded by a backoffice automatic process.
  • I have an other set of entities ENTITY_SET_B which are created via the web GUI.

I would like

  • the web GUI (APP_B) ONLY access to ENTITY_SET_B
  • the app that managed ENTITY_SET_A (APP_A) can also access to ENTITY_SET_B

What would you recommend

  • APP_A (that contains main datastore ENTITY_SET_A) should also use ENTITY_SET_B as additionnal Data Store ?

    • But in that case, ENTITY_SET_B would be both be accessed by the APP_A and the Web APP (APP_B). I’m not sure it would be a good thing !
  • In APP_A, call the REST API of APP_B ?

    • Is there a way to easily map (/ reuse) java classes of APP_B-global.jar in APP_A ?

Thanks for you rsuggestions



First thing you say is:

Then you say:

I’m sorry but your requirements contradict each other.

There is nothing wrong in two applications accessing the same database. It does not differ from multi-user system, where two users can simultaneously access the same data. Unless you set up some entity cache in one of your applications - which would have to be synchronized between two systems.

Yes, there is a way. You can build APP_B-global.jar and upload it to some maven repository.
Then you can just attach APP_B-global.jar as a compile-dependency to your APP_A project.