o objetivo é fazer uma api em java que recebe em json, e retorna em json exatamente o que eu mandei.

é bem idiota. mas serve pra algumas coisas

a estrutura basica de arquivos disso vai ser controller, dtos e service.

sem models ou repositories, pois não vamos salvar nada num banco de dados, e os dtos (request e response) farão o papel de salvar momentaneamente os dados do pingpong.

controller

image.png

o que importa aqui é o método post.

nele tipamos com o ResponseEntity, que o transforma numa resposta HTTP.

depois passamos as propriedades: o que queremos receber nesse post.

@RequestBody ——- esperamos algo vindo de um HTTP, um JSON.

terminalRequest data ——- o que vier desse HTTP, devemos transformar no molde do Request

image.png

dentro da classe, pra nos organizar, atribuimos uma var da chamada do service (já mandando o data pra lá)

e um retorno responsentity.ok que chama a var


Service

Response

Antes de tudo, é organizado que criamos um DTO para o molde da resposta. O que desejamos retornar?

image.png

image.png

Agora, como queremos retornar um objeto (e não um return de repository, como outros casos) é preciso criar um método que seja do molde que criamos do RESPONSE. e ele deve receber o REQUEST, que quando ele é chamado, tem o valor lá do controller guardado.

Dentro do método, definimos uma váriavel ao campo “input” do objeto

e retornamos um novo objeto com o valor dele.