Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Carga inicial em Banco de Dados (ROOM)

Olá, amigos. Eu estou desenvolvendo um app teste de perguntas e respostar múltipla escolha. Eu gostaria de saber qual a melhor forma de carregar os dados das questões, vindo de um web service retornando um json.

Eu trago um array de json e gostaria de gravá-lo no banco.

[{
        "id": "1",
        "disciplina": "História",
        "assunto": "Período Pré-Colonial",
        "enunciado": "quem descobriu o Brasil?",
        "letraA": "Pedro Álvares Cabral",
        "letraB": "Chapolin",
        "letraC": "Bolsonaro",
        "letraD": "Biro Biro",
        "letraE": "Alex Felipe",
        "correta": "Pedro Álvares Cabral"
    },
    {
        "id": "2",
        "disciplina": "Geografia",
        "assunto":"Regiões",
        "enunciado": "Em que região fica o estado do Amazonas",
        "letraA": "Sul",
        "letraB": "Leste",
        "letraC": "Sudeste",
        "letraD": "Norte",
        "letraE": "Nordeste",
        "correta": "Norte"
    }
]

Posteriormente minha intenção é fazer um filtro por disciplina e/ou assunto.

1 resposta
solução!

Oi Rafael, tudo bem?

Olhando este modelo eu vejo duas alternativas, a primeira e mais objetiva seria criar uma classe chamada Pergunta que teria todos os atributos.

A outra seria separar para mais entidades, como é o caso de Pergunta para:

"id"
"disciplina"
"assunto"
"enunciado"
"correta"

E uma outra entidade Alternativa, pois dessa forma, a Pergunta teria N alternativas e poderia tanto ter menos ou mais de 5 sem problemas.

O detalhe da segunda abordagem é que tende a ser mais complexo, pois você vai ter que lidar com id de alternativas, até mesmo para indicar qual é a correta.

[]s