dependencies {
def room_version = "2.4.0"
implementation "androidx.room:room-runtime:$room_version"
annotationProcessor "androidx.room:room-compiler:$room_version"
debugImplementation "androidx.room:room-ktx:$room_version"
}
@Entity
public class User {
@PrimaryKey
public int id;
public String name;
public String email;
}
@Dao
public interface UserDao {
@Insert
void insert(User user);
@Query("SELECT * FROM User")
List<User> getAllUsers();
@Query("SELECT * FROM User WHERE id = :userId")
User getUserById(int userId);
@Update
void update(User user);
@Delete
void delete(User user);
}
@Database(entities = {User.class}, version = 1)
public abstract class AppDatabase extends RoomDatabase {
public abstract UserDao userDao();
}
AppDatabase db = Room.databaseBuilder(getApplicationContext(),
AppDatabase.class, "database-name").build();