Я загружаю серию файлов в свое приложение, и для каждого файла я проверяю, содержит ли он какие-либо изображения, если да, то я генерирую контрольную сумму для данных изображения и проверяю, находится ли изображение в базе данных, если Я не добавляю его в базу данных. Вся база данных выполняется через Hibernate.
Это прекрасно работает, когда мой код однопоточный, но когда он многопоточный, вызов, чтобы проверить, находится ли изображение в базе данных, может вернуть false, но к тому времени, когда я пытаюсь вставить его, он мог быть добавлен другим потоком, поэтому я затем придется обработать исключение и сделать еще одну попытку получить изображение, чтобы я мог его вернуть.
Могу ли я чем-нибудь помочь в Hibernate, чтобы мне не пришлось выполнять эту дополнительную работу по кодированию?