Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Response Entity Json desorganizado

Pessoal tudo bem? tenho a Classe DetalhamentoMedico .

package med.voll.api.dto.medico;

import med.voll.api.entity.Endereco;
import med.voll.api.entity.Medico;
import med.voll.api.entity.enun.Especialidade;

public class DetalhamentoMedico {

    private Long Id;
    private String nome;
    private String email;
    private String telefone;
    private String crm;
    private Especialidade especialidade;
    private Endereco endereco;
    private Boolean ativo;


    public DetalhamentoMedico() {
    }

    public DetalhamentoMedico(Medico medico) {
                this.nome = medico.getNome();
        this.email = medico.getEmail();
        this.crm = medico.getCrm();
        this.especialidade = medico.getEspecialidade();
        this.endereco = medico.getEndereco();
        this.Id =medico.getId();
        this.ativo = medico.getAtivo();

    }

    public Long getId() {
        return this.Id;
    }

    public void setId(Long id) {
        this.Id = id;
    }

    public String getNome() {
        return this.nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getEmail() {
        return this.email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getTelefone() {
        return this.telefone;
    }

    public void setTelefone(String telefone) {
        this.telefone = telefone;
    }

    public String getCrm() {
        return crm;
    }

    public void setCrm(String crm) {
        this.crm = crm;
    }

    public Especialidade getEspecialidade() {
        return especialidade;
    }

    public void setEspecialidade(Especialidade especialidade) {
        this.especialidade = especialidade;
    }


    public Boolean getAtivo() {
        return ativo;
    }

    public void setAtivo(Boolean ativo) {
        this.ativo = ativo;
    }

    public Endereco getEndereco() {
        return this.endereco;
    }

    public void setEndereco(Endereco endereco) {
        this.endereco = endereco;
    }



}

Porem, quando retorno o objeto DetalhamentoMedico para o ResponseEntity no Controller ele cria o Json da seguinte forma:

        DetalhamentoMedico result = service.AtualizarMedico(dados);
        return ResponseEntity.ok().body(result);

JSON

{
    "nome": "Cometa de Jequito",
    "email": "rodrigo.ferreira@voll.med",
    "telefone": null,
    "crm": "123456",
    "especialidade": "ORTOPEDIA",
    "endereco": {
        "logradouro": "rua 1",
        "bairro": "bairro",
        "cep": "12345678",
        "cidade": "Brasilia",
        "uf": "DF",
        "numero": "1",
        "complemento": "complemento"
    },
    "ativo": false,
    "id": 1
}

O ID fica na ultima posição. como fazer com o ID seja o primeiro campo visualizado?

2 respostas

Olá, Lucas! Tudo bem?

Para que o ID seja o primeiro campo visualizado no JSON, você pode utilizar a anotação @JsonPropertyOrder na classe DetalhamentoMedico, informando a ordem em que os campos devem ser exibidos. Ficaria assim:

@JsonPropertyOrder({"Id", "nome", "email", "telefone", "crm", "especialidade", "endereco", "ativo"})
public class DetalhamentoMedico {
    // código da classe
}

Dessa forma, o ID será exibido como primeiro campo no JSON.

Espero ter ajudado e bons estudos!

solução!

muito obrigado professor.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software