Я изучаю Kotlin, часть моего проекта — интегрировать JSON как объект и использовать метод POST для изменения или добавления информации. Я не могу этого сделать, мне нужна помощь.
package com.example.blog
import org.springframework.web.bind.annotation.*
data class Relatorio(
val titulo: String,
val autor: String,
val serie: String
)
@RestController
@RequestMapping("/Bradesco")
class BradescoController {
@GetMapping()
public fun relatorio(): Relatorio {
val result = Relatorio(
"Investimentos",
"Luis Felipe",
"Bradesco Analises"
)
return result
}
@PostMapping
@RequestMapping( @RequestBody "/empiricus")
public fun relatorio2() {
"titulo" = "Contra as altas taxas"
return "Atualizado";
}
}




Похоже, что некоторые аннотации неуместны в вашем методе relatorio2. Вы хотите зарегистрировать REST-конечную точку для POST-метода и пути /empiricus.
Это может произойти одним из двух способов:
@RequestMapping(value = "/empiricus", method = RequestMethod.POST)Аннотацию @RequestBody необходимо поместить в параметр метода relatorio2, поскольку она указывает Spring сопоставить тело запроса POST с объектом.
Поэтому метод должен выглядеть примерно так:
@PostMapping("/empiricus")
public fun relatorio2(@RequestBody relatorio: Relatorio) {
"titulo" = "Contra as altas taxas"
return "Atualizado";
}
Поскольку вы добавили путь на уровне класса, полный путь для вызова метода — /Bradesco/empiricus. Когда объект доступен в методе relatorio2, вы можете использовать его в своей бизнес-логике.