Вот минимальный пример для описания проблемы:
Предположим, что таблица читается из SQLiteDB и сохраняется в объекте коллекции Java
Таблица БД ---> Объект Java
idRecord | Data (table stored at DB)
1 One
2 Two
3 Three
4 Four
И через библиотеку sqlite jdbc :
Map objTable = new HashMap ();//... добавив некоторые вещи jdbc, мы получим копию DBTable в objTable
Затем, если объект изменен, таким образом, будет.
idRecord | Data (modified table stored at objTable)
2 Two
4 FourModified
5 Five
(идентификаторы 1 и 3 были удалены, 2 остались прежними, 4 изменены и 5 добавлены)
Объект Java -> таблица БД (вот вопрос ...)
Как обновить / объединить таблицу объектов с БД?
Почему я хочу объединить, а не просто сохранить объект в таблицу ?
Я думаю, что если таблица достаточно велика, то нет смысла записывать все записи, если были изменены только некоторые из них.
Удалите весь DBtable и в цикле (опасного, в то же время) обойдите объект, чтобы написать новую таблицу.
Считайте DBtable во втором java-объекте, а затем сравните оба (скакое-то объединение алгоритма) и применить действия (ДОБАВИТЬ, УДАЛИТЬ, ИЗМЕНИТЬ) непосредственно к БД.(Я бы принял рекомендацию для этого алгоритма сравнения)
РЕДАКТИРОВАТЬ: Во-первых, не создавать Коллекцию, читать и писать напрямуюиз БД, постоянно передавая запросы через JDBC
Другой лучший подход
Thanks4Reading