2
respostas

[Dúvida] Dúvida - inclusão da nota do IMDB

Tentei incluir mais um dado no ScreenMatch: além de título, ano de lançamento e duração, coloquei também a nota do IMDB, que já aparece no json como "imdbRating". O problema é que essa variável não tem inicial maiúscula, como as outras, então não dá certo com aquela configuração "upper camel case". Passei horas tentando arranjar uma solução para isso, mas não consegui. Como essa questão poderia ser resolvida?

2 respostas

Olá, Clarissa!

Entendo que você está tentando adicionar a nota do IMDB ao seu projeto ScreenMatch e está tendo problemas com o formato "upper camel case".

A biblioteca que você está usando para parsear o JSON provavelmente está configurada para converter automaticamente os nomes dos campos do JSON em "upper camel case", o que é comum em Java. No entanto, o campo "imdbRating" não segue essa convenção.

Para resolver esse problema, você pode usar uma anotação para mapear o campo "imdbRating" para uma variável Java. Aqui está um exemplo de como você pode fazer isso:

public class Movie {
    // Outros campos...

    @JsonProperty("imdbRating")
    private String imdbRating;

    // Getters e setters...
}

Neste exemplo, a anotação @JsonProperty("imdbRating") informa à biblioteca para mapear o campo "imdbRating" do JSON para a variável imdbRating em Java. Assim, mesmo que o nome do campo não siga a convenção "upper camel case", você ainda será capaz de acessar o valor dele.

Espero ter ajudado e bons estudos!

Obrigada pela resposta!

Para usar essa anotação, é preciso adicionar uma dependência? Ou um import?

Não acertei, o IntelliJ indica "Cannot resolve symbol 'JsonProperty'", mas não consegui resolver...