我正在编写一个带有spring boot的API,试图保持它的安静,但结构是完全嵌套的。所以说我有:
/api/examboard/{ebid}/qualification/{qid}/subject/{sid}/module/{mid}/
我的每个名词都有一个控制器可以接收所有Id,这个问题是我真的不需要模块的ebid或qid,他们只需要在大多数时候关注主题。它们之间的映射非常简单。一个examboard将有许多资格,一个资格将有许多科目等....
现在的问题是我要求更简单的API设计,我只需要父ID,因此主题控制器也将具有:
api/subject/{sid}/module
然后我需要根据JPA的工作方式在我的控制器中包含多个服务。因为我需要包含基于SubjectEntity
的呼叫和基于ModuleEntity
的呼叫。但是,我想在我的控制器/服务和服务/存储库之间保持一对一的关系。这就是为什么我选择了更长的网址,正如我上面提到的那样,但它确实有点矫枉过正。有没有人对如何构建这样的API有任何建议,大多数例子都很小,并不适合。