- Dodaj odpowiednie zależności do build.gradle(Module: app)
def room_version = "1.1.1"
implementation "android.arch.persistence.room:runtime:$room_version"
annotationProcessor "android.arch.persistence.room:compiler:$room_version"
testImplementation "android.arch.persistence.room:testing:$room_version" - Zsynchronizuj build.gradle
- kliknij prawym przyciskiem na build.gradle
- wybierz Synchronize build.gradle
- Dodaj klasę obiektu, który będzie reprezentował tabelę
- Daj jej annotację @Entity
- Dodaj kolumnę @PrimaryKey
- Dodaj pozostałe kolumny
- Dodaj gettery i settery elementów obiektu (na potrzeby Room)
@Entity
public class StoryObject {
@PrimaryKey
private int storyId;
@ColumnInfo(name = "main_text")
private String mainText; - Stwórz interfejs z metodami dostępu do bazy - DAO
- Daj jej annotację @Dao
- Dodaj metody dostępu (napisane w SQL)
@Dao
public interface StoryDao {
@Query("SELECT * FROM story")
List<StoryObject> getAll();
@Insert
void insertAll(StoryObject... objects);
@Delete
void delete(StoryObject object);
} - Stwórz klasę (abstract) bazy danych
- Dodaj jej annotację @Database i przypisz klasy, które ją reprezentują (entities)
- Dodaj metodę (abstract), która zwróci odpowiedni obiekt Dao
@Database(entities = {StoryObject.class}, version = 1)
public abstract class StoryDatabase extends RoomDatabase {
public abstract StoryDao getStoryDao();
} - W kodzie aplikacji wywołaj budowanie bazy danych
StoryDatabase db = Room.databaseBuilder(getApplicationContext(),
StoryDatabase.class, "story_database").build();
niedziela, 5 sierpnia 2018
Room - kilka słów o przechowywaniu danych
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz