这些方法有什么区别?我已经阅读了文档,但我不明白 callBatchTasks 方法的作用。文档说:



不是交易吗?

谢谢。

最佳答案



差异取决于您使用的数据库。在Android下,没有区别。 callBatchTasks(...) 的 javadocs 说:



Android 的 SQLite 是数据库之一。在内部 ORMLite 代码中,您会看到:

private <CT> CT doCallBatchTasks(DatabaseConnection connection, boolean saved,
        Callable<CT> callable) throws SQLException {
    if (databaseType.isBatchUseTransaction()) {
        return TransactionManager.callInTransaction(connection, saved, databaseType,
            callable);
    }
    ...

所以在内部,在 Android 下使用时, dao.callBatchTasks(...) 是对 TransactionManager.callInTransaction(...) 的调用。

关于java - OrmLite:Dao.callBatchTasks() 和 TransactionManager.callInTransaction() 的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28627490/

10-12 03:07