| 
 | 
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Есть контроллер Код: java 1. 2. 3. 4. 5. 6. 7. 8. И соотвественно сервис Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Собственно вопрос Если в контроллер проходит метод - method1, а method2 падает Можно ли откатывать и изменения method1? Читал, что управление транзакция на уровне контроллера плохая идея Поэтому и возник вопрос Логику работы методов менять нельзя (из method1 вызвать method2 не могу) ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 14:33 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  -=Koba=-, Теоретически плохо 2 метода в контроллере. Это же уже БЛ? Но по факту голый контроллер тоже плохо. Поэтому делай в контроллере если надо. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 14:46 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Теоретический да... это уже готовая БЛ И всплыл такой баг Что изменения должны быть все или ничего В моем случае, транзакция метода 1 проходит, метод 2 падает Можете поянсить - Но по факту голый контроллер тоже плохо. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 14:48 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  -=Koba=-, Еденица работы это вызов POST Поэтому непонятно, почему ты разбил Одну единицу из двух методов на две транзакции? Ты должен вызвать всю работу в одной транзакции. Так? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 14:56 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  -=Koba=-, >Можете поянсить - Но по факту голый контроллер тоже плохо. = если проект маленький, то вообще можно не разбивать на слои и все делать в контроллерах. Даже ссыль на хибер иметь. Если большой то контроллер считается ГУИ и там бл не должно быть. Там логика запросов ЮЗВЕРЯ ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 15:05 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  -=Koba=-, >Логику работы методов менять нельзя (из method1 вызвать method2 не могу) = а из метода3 вызвать 1 и потом 2? ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 15:08 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  PetroNotC Sharp -=Koba=-, >Логику работы методов менять нельзя (из method1 вызвать method2 не могу) = а из метода3 вызвать 1 и потом 2? Ок спасибо за наводку.... подумаю, так можно ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 15:10 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  со спринговым aop такое может не сработать - метод должен извне вызываться, чтоб его завернуло в траназакцию, async и т.д. -  если из метода3 вызвать метод2 или 1, то транзакции не будет у каждого из них, только у метод3. Нужно AspectJ юзать ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 16:28 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  chpasha, Ну, я и подумал что ему не надо делать типа автономной транзакции. Не так часто требуется. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 17:22 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  chpasha, А вот если понадобится, то я не понял что значит "извне". Стек вызовов вроде везде одинаков. ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 17:25 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  chpasha со спринговым aop такое может не сработать - метод должен извне вызываться, чтоб его завернуло в траназакцию, async и т.д. -  если из метода3 вызвать метод2 или 1, то транзакции не будет у каждого из них, только у метод3. Нужно AspectJ юзать ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 17:52 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Stanislav Bashkyrtsev, Тут имхо непонятно что он спрашивал. Как всегда на форуме, три пишем, а семь на ум пошло. - если нужна была одна, то почему аннотация на новую. - если две, то с какой целью. В общем вроде пациент разобрался мирно и без эксцессов. ... Но есть повод поболтать в рамках инженерии). ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 18:24 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Stanislav Bashkyrtsev Ему и не надо чтоб method1 & method2 были обернуты каждый в свою транзакцию мне это не очевидно хотя бы потому, что у них propagation разные - я как-то по наивности полагал, что там REQUIRES_NEW не от балды вставлено Stanislav Bashkyrtsev И есть методы по-проще нежели AspectJ прикручивать, даже если вызов "внутренний". PetroNotC Sharp А вот если понадобится, то я не понял что значит "извне". ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 19:07 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  chpasha Stanislav Bashkyrtsev Ему и не надо чтоб method1 & method2 были обернуты каждый в свою транзакцию мне это не очевидно хотя бы потому, что у них propagation разные - я как-то по наивности полагал, что там REQUIRES_NEW не от балды вставлено -=Koba=-Если в контроллер проходит метод - method1, а method2 падает Можно ли откатывать и изменения method1А propagation поставлен наверно от балды. Он просто еще не разобрался с тем как транзакционность настраивается. Конкретно в данном куске кода мог стоять и обычный REQUIRES . chpasha Stanislav Bashkyrtsev И есть методы по-проще нежели AspectJ прикручивать, даже если вызов "внутренний". ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 05.05.2021, 23:36 | 
  
  
  
   | 
||
| 
 
Controller & Transactions 
 | 
|||
|---|---|---|---|
| 
 #18+ 
    
  Stanislav Bashkyrtsev Почему мы не рассматриваем очевидные (и правильные) решения? Stanislav Bashkyrtsev хаки типа self injection ну нет, это уже из разряда можно ли съесть лампочку ;) ...  | 
|||
| 
 : 
 Нравится:
      
  Не нравится:
      
  
   | 
|||
| 06.05.2021, 11:40 | 
  
  
  
   | 
||
| 
 | 

start [/forum/topic.php?fid=59&msg=40068635&tid=2120456]:  | 
    0ms | 
get settings:  | 
    8ms | 
get forum list:  | 
    13ms | 
check forum access:  | 
    3ms | 
check topic access:  | 
    3ms | 
track hit:  | 
    46ms | 
get topic data:  | 
    9ms | 
get forum data:  | 
    2ms | 
get page messages:  | 
    47ms | 
get tp. blocked users:  | 
    1ms | 
| others: | 12ms | 
| total: | 144ms | 

| 0 / 0 | 

На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даете согласие с использованием данных технологий.