2
respostas

dao para acesso a banco de dados

Este mesmo código, caso eu quisesse usar o dao para armazenar em banco de dados as informações atualmente persistidas em List, como seria?

2 respostas

Existem duas formas: a primeira seria criar uma classe filha de SQLiteOpenHelper, que é a responsável por definir o seu banco de dados e suas tabelas. Um esqueleto de uma classe dessas seria assim:

public class MeuDAO extends SQLiteOpenHelper {

    public MeuDAO(Context ctx) {
        super(ctx, "nome-do-meu-database", null, 1); //o 1 aqui é a versão do banco.
    }

    public void onCreate(SQLiteDatabase db) {
        //aqui iriam os create tables...
    }

    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        //aqui controlamos as atualizações do banco usando os parâmetros para saber qual a versão do banco estamos manipulando.
    }

    //Aqui teríamos nossos métodos de insert, delete...
}

A segunda forma seria usar uma biblioteca construída em cima do SQLiteOpenHelper, com algumas facilidades, chamada Room. Temos um curso sobre isso aqui na Alura.

Valeu, Felipe! Agora que vi que existe o curso mais pra frente! Obrigado! Vou continuar a caminhada. Sucesso pra você!

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