|
Модераторы: LSD, AntonSaburov |
|
unkis |
|
|||
Опытный Профиль Группа: Участник Сообщений: 802 Регистрация: 8.9.2004 Репутация: нет Всего: 1 |
У меня следующая проблема.
Существует транзакция которая делает следующае Транзакция: 1) Посмотри, есть ли обект с определёнными параметрами в БД. 2) Если нет, то создай этот объект. В противном случае обнови обект. Предположим, мы имеем две транзакции (Т1 и Т2), которые выполняются параллельно. T1 смотрит в БД - нет никакого объекта. Миллисекунду позднее, T2 смотрит в БД - нет и объекта. T1 сохраняет объект в базу данных, и это также делает T2. У нас есть два объекта вместо одного. Как ршить эту проблему? Я использую: Hibernate + Tomcat + Spring Спасибо. -------------------- www.unkis.com |
|||
|
||||
AntonSaburov |
|
|||
Штурман Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 51 Всего: 118 |
||||
|
||||
unkis |
|
|||
Опытный Профиль Группа: Участник Сообщений: 802 Регистрация: 8.9.2004 Репутация: нет Всего: 1 |
На самом деле, проблему решил простым словом synchronyzed в вызове методо, помоему быстрое и оптимальное решение, что думаете?
-------------------- www.unkis.com |
|||
|
||||
AntonSaburov |
|
|||
Штурман Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 51 Всего: 118 |
Я не совсем внимательно прочитал первое сообщение - чего-то в версионность полез.
Может будет проще поставить уникальность на список нужных полей в базе данных - если такой объект существует, то при добавлении будет выдаваться exception. И всех делов. |
|||
|
||||
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux, javastic. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |