Dependencies
implementation "android.arch.persistence.room:runtime:1.0.0"
annotationProcessor "android.arch.persistence.room:compiler:1.0.0"
configurations.all {
resolutionStrategy.force 'com.android.support:support-annotations:23.1.0'
}
1. Create Model - Getter Setters , Defualt Constructor
@Entity
public class Movies {
@NonNull
@PrimaryKey
private String movieId;
private String movieName;
}
2. Create Interface DAO -
@Dao
public interface DaoAccess {
@Insert
void insertOnlySingleMovie (Movies movies);
@Insert
void insertMultipleMovies (List<Movies> moviesList);
@Query("SELECT * FROM Movies WHERE movieId = :movieId")
Movies fetchOneMoviesbyMovieId (int movieId);
@Update
void updateMovie (Movies movies);
@Delete
void deleteMovie (Movies movies);
}
3. Create - > abstract class MovieDatabase extends RoomDatabase
@Database(entities = {Movies.class}, version = 1, exportSchema = false)
public abstract class MovieDatabase extends RoomDatabase {
public abstract DaoAccess daoAccess() ;
}
4. OnCreate -
movieDatabase = Room.databaseBuilder(getApplicationContext(),
MovieDatabase.class, DATABASE_NAME)
.fallbackToDestructiveMigration()
.allowMainThreadQueries()
.build();
public void onClick --> Movies movies2 = movieDatabase.daoAccess().fetchOneMoviesbyMovieId(3);
Comments
Post a Comment