为了账号安全,请及时绑定邮箱和手机立即绑定

带领域的DAO模式

带领域的DAO模式

catspeake 2021-03-30 13:14:19
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);}
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 148 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信