在另一个sqlite事务中调用dao



我有两个dao,我需要在它们之间调用方法

我做了这样的事情,但它真的很糟糕,因为它做了一个无限循环,它不尊重质量标准请问正确的做法是什么?非常感谢

刀1

public class InfractionDAO {

  private SQLiteDatabase database;
  private SqLiteManager dbHelper;
  private OffenderDAO offenderDAO;

  public InfractionDAO(Context context) {
    dbHelper = new SqLiteManager(context);
    offenderDAO= new OffenderDAO (context);
  }
  List<Infractions> getInfractions(int id) {
     offenderDao.getOffender(id);
  }
}

DAO 2

public class OffenderDAO {

  private SQLiteDatabase database;
  private SqLiteManager dbHelper;
  private InfractionDAO infractionDAO;
  public OffenderDAO (Context context) {
    dbHelper = new SqLiteManager(context);
    infractionDAO = new InfractionDAO(context);
  }
 Offender getOffender(int id) {
  infractionDAO.getInfractions(id);
}
}

我要做的是:
解决方案1。
为两者创建一个基类(也许是抽象的?),它们共享共同的东西,在每个单独的类中,违法者和违法者放置不同的东西。
方案二。
我将创建一个单例类,在构造函数中初始化这两个类。就像下面的链接:
http://pastebin.com/84g9SgFT

最新更新