我是kotlin/java世界的新手。所以我需要一点帮助以一种简单的方式解析一个旧的时尚请求。
我的控制器在收到新的请求之前工作得很好。
我的控制器:
@PostMapping("/create")
@ResponseStatus(OK)
fun create(
@RequestBody @NotEmpty request: PersonRequest,
) = service.create(mapper.toDto(request))
新建bodyrequest:
{
"fields": [
{
"id": "name",
"value": "blablabla"
},
{
"id": "phone",
"value": "+1 11111111"
},
{
"id": "birthday",
"value": "2000-01-01"
}
]
}
我的班级:
class PersonRequest(
var name: String?,
@field: Pattern(regexp = "blabla")
var phone: String?,
var birthday: LocalDate?
)
有什么建议吗?谢谢!
1条答案
按热度按时间ndasle7k1#
你发布的请求正文与类不匹配
PersonRequest
.将请求主体结构更改为:
更新:
由于无法更新请求结构,您的另一个选择是通过创建两个类来更改类结构,如下所示:
更新2:
最后一步,根据您的需求是可选的,您可以操纵
PersonRequest
现在初始化并使用普通setter/getter将其转换为任何其他类。更新3:
转换
List<Field>
至PersonRequest
,你可以这样做:不是最整洁的代码,但是。。。