Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 公开单个REST端点(GET),该端点返回父对象及其关联的所有子对象_Java_Api_Rest_Parent Child - Fatal编程技术网

Java 公开单个REST端点(GET),该端点返回父对象及其关联的所有子对象

Java 公开单个REST端点(GET),该端点返回父对象及其关联的所有子对象,java,api,rest,parent-child,Java,Api,Rest,Parent Child,实现一个REST端点(GET)以同时公开父对象和子对象集是否正确 e、 g: 母公司{ 姓名:家长, id:123, 儿童:{ { 子女姓名:1 }, { 子女姓名:2 } } } 我想有两种方法: 实现一个名为“parentWithchildren”的API(GET:/parentWithchildren/) 只返回父对象的端点,它将返回一个包含一组子对象的父对象(GET:parent/) 如果我们遵循RESTAPI原则,并且假设您的资源是父资源,并且父资源可以有子资源。假设每个子节点都可以通

实现一个REST端点(GET)以同时公开父对象和子对象集是否正确

e、 g:

母公司{ 姓名:家长, id:123, 儿童:{ { 子女姓名:1 }, { 子女姓名:2 } } }

我想有两种方法:

  • 实现一个名为“parentWithchildren”的API(GET:/parentWithchildren/)
  • 只返回父对象的端点,它将返回一个包含一组子对象的父对象(GET:parent/)

  • 如果我们遵循RESTAPI原则,并且假设您的资源是父资源,并且父资源可以有子资源。假设每个子节点都可以通过Id和父节点识别,那么您的rest端点将如下所示:

    get /parent/{parentId}
    get /parent/{parentId}/child/{childId}
    
    get /parent/{parentId}?fetchChildren=true
    
    现在,您可以潜在地创建粗糙版本的服务,如果您的孩子没有ID,该服务也会很有用,它看起来像:

    get /parent/{parentId}
    get /parent/{parentId}/child/{childId}
    
    get /parent/{parentId}?fetchChildren=true
    

    将端点实现为/parentWithchildren更像是一种RPC风格的编程,不像rest那样。

    如果我们遵循rest api原则,并且假设您的资源是父资源,并且父资源可以有子资源。假设每个子节点都可以通过Id和父节点识别,那么您的rest端点将如下所示:

    get /parent/{parentId}
    get /parent/{parentId}/child/{childId}
    
    get /parent/{parentId}?fetchChildren=true
    
    现在,您可以潜在地创建粗糙版本的服务,如果您的孩子没有ID,该服务也会很有用,它看起来像:

    get /parent/{parentId}
    get /parent/{parentId}/child/{childId}
    
    get /parent/{parentId}?fetchChildren=true
    
    将端点实现为/parentWithchildren更像是一种RPC风格的编程,而不像rest那样