質問編集履歴

5

_

2018/12/04 18:24

投稿

k499778
k499778

スコア599

test CHANGED
File without changes
test CHANGED
@@ -21,6 +21,8 @@
21
21
  いろんな記事を見て、RuntimeExceptionを明示的に起こしてロールバックさせようとしているのですが、DBの値は更新されていました。
22
22
 
23
23
  参考:[https://www.qoosky.io/techs/400f6b6f09](https://www.qoosky.io/techs/400f6b6f09)
24
+
25
+ [springbootのトランザクション管理について](https://teratail.com/questions/120515)
24
26
 
25
27
 
26
28
 

4

2018/12/04 18:24

投稿

k499778
k499778

スコア599

test CHANGED
File without changes
test CHANGED
@@ -19,6 +19,8 @@
19
19
 
20
20
 
21
21
  いろんな記事を見て、RuntimeExceptionを明示的に起こしてロールバックさせようとしているのですが、DBの値は更新されていました。
22
+
23
+ 参考:[https://www.qoosky.io/techs/400f6b6f09](https://www.qoosky.io/techs/400f6b6f09)
22
24
 
23
25
 
24
26
 

3

2018/12/04 18:20

投稿

k499778
k499778

スコア599

test CHANGED
File without changes
test CHANGED
@@ -14,11 +14,11 @@
14
14
 
15
15
  それを@Transactionalを使ってトランザクション処理を実装しようとしていました。
16
16
 
17
- serviceクラス内のメソッドに@Transactionalを設定し、cotrollerクラスからautowiredでserviceクラスをDIしています。またメソッドはpublicです。
17
+ serviceクラス内のメソッドに@Transactionalを設定し、controllerクラスから@AutowiredでserviceクラスをDIしています。またメソッドはpublicです。
18
18
 
19
19
 
20
20
 
21
- いろんな記事を見て、runtimeexceptionを明示的に起こしてロールバックさせようとしているのですが、DBの値は更新されていました。
21
+ いろんな記事を見て、RuntimeExceptionを明示的に起こしてロールバックさせようとしているのですが、DBの値は更新されていました。
22
22
 
23
23
 
24
24
 

2

2018/12/04 17:45

投稿

k499778
k499778

スコア599

test CHANGED
File without changes
test CHANGED
@@ -34,15 +34,15 @@
34
34
 
35
35
  @Transactional
36
36
 
37
- public void update(Store uDto, List<Item> hogeList) {
37
+ public void update(List<Item> iList,Store sDto) {
38
38
 
39
- List<Item> tList = new ArrayList<>();
39
+ List<Item> tempList = new ArrayList<>();
40
40
 
41
41
 
42
42
 
43
- hogeList.forEach(t ->
43
+ iList.forEach(i ->
44
44
 
45
- t.setUsed(1);
45
+ i.setUsedFlag(true);
46
46
 
47
47
  tList.add(t);
48
48
 
@@ -50,15 +50,11 @@
50
50
 
51
51
 
52
52
 
53
- tDao.batchUpdate(tList);
53
+ iDao.batchUpdate(tempList);
54
-
55
-
56
-
57
-
58
54
 
59
55
 
60
56
 
61
- sDao.update(uDto);
57
+ sDao.update(sDto);
62
58
 
63
59
 
64
60
 

1

2018/12/04 17:43

投稿

k499778
k499778

スコア599

test CHANGED
File without changes
test CHANGED
@@ -27,3 +27,43 @@
27
27
 
28
28
 
29
29
  お願い致します。
30
+
31
+
32
+
33
+ ```Java
34
+
35
+ @Transactional
36
+
37
+ public void update(Store uDto, List<Item> hogeList) {
38
+
39
+ List<Item> tList = new ArrayList<>();
40
+
41
+
42
+
43
+ hogeList.forEach(t ->
44
+
45
+ t.setUsed(1);
46
+
47
+ tList.add(t);
48
+
49
+ });
50
+
51
+
52
+
53
+ tDao.batchUpdate(tList);
54
+
55
+
56
+
57
+
58
+
59
+
60
+
61
+ sDao.update(uDto);
62
+
63
+
64
+
65
+ throw new RuntimeException();
66
+
67
+ }
68
+
69
+ ```