Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Propagation.MANDATORY / 15 сообщений из 15, страница 1 из 1
07.04.2013, 17:05:20
    #38216178
rdm
rdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
Насколько правильно(хорошая практика?) слой DAO отмечать аннотацией @Transactional(propagation = Propagation.MANDATORY)?
...
Рейтинг: 0 / 0
07.04.2013, 17:11:19
    #38216187
забыл ник
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
...
Рейтинг: 0 / 0
07.04.2013, 17:14:01
    #38216192
rdm
rdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
забыл никrdm,
http://www.ibm.com/developerworks/views/java/libraryview.jsp?search_by=transaction+strategies:
Читал

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
@Transactional( propagation = Propagation.REQUIRES_NEW )
public class Controller{
   ...
}
@Transactional( propagation = Propagation.MANDATORY )
public class Service{
   ...
}
@Transactional( propagation = Propagation.MANDATORY )
public class DAO{
   ...
}



http://www.baeldung.com/2011/12/26/transaction-configuration-with-jpa-and-spring-3-1/
...
Рейтинг: 0 / 0
07.04.2013, 17:37:07
    #38216211
Йуный джавистЪ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
Насколько правильно(хорошая практика?) слой DAO отмечать аннотацией @Transactional(propagation = Propagation.MANDATORY)?
Зачем это может быть нужно?
...
Рейтинг: 0 / 0
07.04.2013, 17:40:24
    #38216214
rdm
rdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
Йуный джавистЪНасколько правильно(хорошая практика?) слой DAO отмечать аннотацией @Transactional(propagation = Propagation.MANDATORY)?
Зачем это может быть нужно?
Как гарантия, что методы выполняются внутри транзакции и не отвечают за ее создание/откат.
...
Рейтинг: 0 / 0
07.04.2013, 17:52:25
    #38216229
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
rdm,
А зачем такие методы)))
...
Рейтинг: 0 / 0
07.04.2013, 18:00:00
    #38216233
rdm
rdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
Petro123rdm,
А зачем такие методы)))
Ну к примеру метод, который заносит в базу информацию о чем-то. В одном сценарии ошибка этого метода не является поводом для отката транзакции, а в другом сценарии является. И это решение принимает Service.
...
Рейтинг: 0 / 0
07.04.2013, 18:32:54
    #38216253
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
rdm,
К примеру, значек "Начать новую" никак не откатит лишнего?
...
Рейтинг: 0 / 0
07.04.2013, 18:46:57
    #38216256
rdm
rdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
Petro123rdm,
К примеру, значек "Начать новую" никак не откатит лишнего?
Не совсем понял фразу)
...
Рейтинг: 0 / 0
07.04.2013, 19:11:11
    #38216275
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
rdm,
правильно я понял, что тебе нужен такой код в декларативных:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
try
  proc A
  proc B

  try  
    proc Z
  except // наплевать
  end
  
  proc C
  Commit;
except
  откатить
...
Рейтинг: 0 / 0
07.04.2013, 19:15:27
    #38216279
rdm
rdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
Petro123rdm,
правильно я понял, что тебе нужен такой код в декларативных:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
try
  proc A
  proc B

  try  
    proc Z
  except // наплевать
  end
  
  proc C
  Commit;
except
  откатить


Как пример) Мне код не нужен, я просто спрашиваю насчет такого подхода, который описан в статье)
...
Рейтинг: 0 / 0
07.04.2013, 19:48:49
    #38216299
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
rdm,
статью не читал, но осуждаю)))) (шутка).
С точки зрения логики.
Если proc Z начать НОВУЮ транзакцию, то цель будет достигнута без Propagation.MANDATORY
Вроде так.
...
Рейтинг: 0 / 0
08.04.2013, 15:23:30
    #38217377
Йуный джавистЪ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
Ну к примеру метод, который заносит в базу информацию о чем-то. В одном сценарии ошибка этого метода не является поводом для отката транзакции, а в другом сценарии является

Пусть первый сценарий отлавливает Exception.
...
Рейтинг: 0 / 0
08.04.2013, 15:25:43
    #38217387
Йуный джавистЪ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
Вообще, на мой взгляд, всякое открывание и закрывание транзакций должно быть при входе в наше API. Внутрях все методы должны рассчитывать на то, что транзакцию для них кто-то открыл, и вообще не париться по поводу транзакций.
...
Рейтинг: 0 / 0
08.04.2013, 15:34:26
    #38217403
Petro123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Propagation.MANDATORY
Йуный джавистЪВообще, на мой взгляд, всякое открывание и закрывание транзакций должно быть при входе в наше API. Внутрях все методы должны рассчитывать на то, что транзакцию для них кто-то открыл, и вообще не париться по поводу транзакций.
тут вообще сложно о них говорить, т.к. субд в них не учавствует. В промежутке - хибер. Плюс они короткие.
Поэтому каждый откатывает как может. Вплоть до сериализации объектов.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Propagation.MANDATORY / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]