DAO如何与领域一起使用?因为当我在活动中尝试设置模型类的成员时,会遇到异常:java.lang.IllegalStateException:只能在事务内部完成更改领域数据。我知道使用可以realm.executeTransaction解决问题,但是我的活动中的代码不再与数据库无关,因为它将使用特定于低级数据库通信的代码。因此,如果以后我想更改数据库,则重构将花费大量时间和工作...此外,我将在所有活动中都要处理对Realm.getDefaultInstance();这是我的活动代码示例protected void onCreate(Bundle savedInstanceState){ mBook = mBookDaoImpl.getBookById(bookId);}// Later in the codeprivate void saveBook(String name){ mBook.setName(name);}这是我的模特班public class Book extends RealmObject{ @Required @PrimaryKey private String id; private String name; public Book() { } public Book(String id, String name) { this.id = id; this.name = name; } // getter setter methods}这是我的DAO界面:public interface BookDao{ List<Book> getAllBooks(); Book getBookByIsbn(int isbn); void saveBook(Book book); void deleteBook(Book book);}
添加回答
举报
0/150
提交
取消