当前位置: 首页 > 面试题库 >

Spring REST有多个@RequestBody参数,可能吗?

田志
2023-03-14
问题内容

我已经实现了Spring RESTful Web服务。使用Jackson JSON进行对象映射。我有一个接受两个参数的方法。

public Person createPerson(
    @RequestBody UserContext userContext,
    @RequestBody Person person)

客户端将如何构造一个请求,以便在正文中传递多个JSON对象?

这可能吗?

-斯里


问题答案:

我很确定那是行不通的。可能有一种解决方法,但更简单的方法是引入包装器对象并更改您的签名:

public class PersonContext{
    private UserContext userContext;
    private Person person;
    // getters and setters
}


public Person createPerson(@RequestBody PersonContext personContext)


 类似资料:
  • 问题内容: 在Java中,lambda是否可以接受多种不同类型? 即:单个变量起作用: Varargs也可以工作: 但是我想要可以接受许多不同类型参数的东西,例如: 为了方便起见,主要用途是在函数内部具有小的内联函数。 我环顾了Google并检查了Java的Function Package,但找不到。这可能吗? 问题答案: 如果使用多个类型参数定义这样的功能接口,则是可能的。没有这样的内置类型。(

  • 问题内容: 我正在尝试选择和以外的所有s的元素。 许多人表明您可以在中放置多个参数,但是无论如何,尝试使用似乎都行不通。 有任何想法吗? 问题答案: 为什么:不只是使用两个: 是的,这是故意的

  • 问题内容: 我在这里遵循规范,不确定是否允许使用多个参数调用onFulfilled。例如: 这样我的代码: 会同时收到和? 我不在乎任何特定的promise实现如何实现,我希望严格遵循w3c规范中的promise。 问题答案: 我在这里遵循规范,不确定是否允许使用多个参数调用onFulfilled。 不,在promise构造函数中,仅第一个参数将被视为分辨率值。您可以使用诸如对象或数组之类的复合值

  • 问题内容: 我想为一组SQL查询创建一个过滤器,以便用户最多可以通过三个值过滤SQL SELECT。用户界面具有三个文本框,每个文本框都将绑定到SQL表中的列名。用户可以通过这些文本框提供一个,两个或三个条件。 到目前为止,这就是我所拥有的。我知道这些声明将不起作用,但是我找不到解决该问题的方法。(使用不会返回任何结果。 问题答案: 如果我正确遵循,您想根据所有填充变量过滤结果,以处理未填充变量,

  • 我对做了一些阅读和研究,但我仍然无法理解它的目的。 在假设情况下: RESTful API只接受用户的,并返回图书的. 注释添加到方法中,该方法将作为参数。 从我在一个类似的问题中读到的答案来看,这在这个场景中是如何应用的?将转换为,然后将转换为,这样用户就可以将其视为JSON对象。我好困惑!

  • 我正在使用swagger编写一个API,其中一个参数的名称中有一个变量(例如:< code > param[VARIABLE]= value )。它将以如下形式发送: 我认为参数定义是这样的: 有可能大摇大摆地实施吗?