Как избежать исключений SQL, когда два настольных приложения Java используют один и тот же БД SQLite - PullRequest
0 голосов
/ 19 ноября 2011

Я вижу некоторые ответы по этому поводу, но они не указывают в моем направлении.

При записи в SQLite все одновременные операции чтения / записи будут throw exception.
Это будет проблемой для моей установки, так как у меня есть:

java background service
java Desktop GUI-приложение

Оба получают доступ к одному и тому же SQLite на одном компьютере.
Существует ли какая-то глобальная установка Singelton для решения этой проблемы.

Любые идентификаторы будут лучше

1 Ответ

1 голос
/ 19 ноября 2011

Со страницы sqlite4java :

Однопоточная модель - каждое соединение SQLite ограничено одним потоком, все вызовы должны исходить из этогонить.Приложение может открыть несколько подключений к одной и той же базе данных из разных потоков.Наряду с Serializable уровнем изоляции от SQLite, эта функция облегчает написание очень чистого и предсказуемого кода.

Так что вам нужно:

  • Иметь выделенный поток, который общается сSQLite
  • Открытие нового соединения для каждого потока
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...