implementation 'androidx.room:room-runtime:2.3.0'
annotationProcessor 'androidx.room:room-compiler:2.3.0'
@Database(entities = {User.class}, version = 1)
public abstract class MyAppDatabase extends RoomDatabase {
public abstract UserDao userDao();
}
@Entity
public class User {
@PrimaryKey
public int id;
public String name;
}
MyAppDatabase db = Room.databaseBuilder(getApplicationContext(),
MyAppDatabase.class, "my_app_database").build();
UserDao userDao = db.userDao();
User user = new User();
user.id = 1;
user.name = "John";
userDao.insert(user);
List<User> users = userDao.getAllUsers();
user.name = "Mike";
userDao.update(user);
userDao.delete(user);
implementation 'org.greenrobot:greendao:3.3.0'
@Entity
public class User {
@Id(autoincrement = true)
private Long id;
private String name;
}
greendao {
schemaVersion 1
daoPackage 'com.example.dao'
targetGenDir 'src/main/java'
}
DaoSession daoSession = ((App) getApplication()).getDaoSession();
UserDao userDao = daoSession.getUserDao();
User user = new User();
user.setName("John");
userDao.insert(user);
List<User> users = userDao.queryBuilder().list();
user.setName("Mike");
userDao.update(user);
userDao.delete(user);
implementation 'org.litepal.guolindev:core:3.2.1'
<?xml version="1.0" encoding="utf-8"?>
<litepal>
<dbname value="my_app_database" />
<version value="1" />
<list>
<mapping class="com.example.User" />
</list>
</litepal>
public class User extends LitePalSupport {
private long id;
private String name;
}
User user = new User();
user.setName("John");
user.save();
List<User> users = LitePal.findAll(User.class);
user.setName("Mike");
user.update();
user.delete();