質問編集履歴
1
質問したかった内容を間違えたので、該当箇所を修正しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -3,19 +3,23 @@
|
|
3
3
|
セッションを用いて買い物カゴの管理をしたいと考えています。
|
4
4
|
|
5
5
|
### 発生している問題・エラーメッセージ
|
6
|
+
(6/20/23:30ごろ内容修正)
|
6
|
-
現在、
|
7
|
+
現在、1件表示ができているのですが、2件目以降表示ができていません。
|
8
|
+
リストを使って表示すればいいのかなと考え、リストを使って試行錯誤しているのですがうまくいかず…
|
7
9
|
|
10
|
+
セッション管理についてまだ理解が浅いです。
|
8
|
-
|
11
|
+
リストとセッションを使って一覧表示ができるのか、セッションだけで一覧表示ができるのか、これ以外に買い物カゴの効率のいい実装方法があるのかご教授お願いいたします。
|
12
|
+
よろしくお願いいたします。
|
9
13
|
|
10
|
-
そもそもこれではセッションにデータが格納されていないのか、何か足りないのかを教えていただきたいです。
|
11
14
|
|
15
|
+
index.html
|
12
16
|
```HTML
|
13
17
|
<form method="post" th:action="@{/add}">
|
14
18
|
<input type="hidden" name="id" th:value="${item.id}" />
|
15
19
|
<input type="submit" value="買い物かごに入れる" />
|
16
20
|
</form>
|
17
21
|
```
|
18
|
-
|
22
|
+
Controller.java
|
19
23
|
```Java
|
20
24
|
|
21
25
|
@Controller
|
@@ -37,36 +41,52 @@
|
|
37
41
|
//注文一覧表示
|
38
42
|
@RequestMapping(path = "/basket/list")
|
39
43
|
public String basketList(@ModelAttribute("basket") BasketBean session_rq, Model model) {
|
44
|
+
//(6/20/23:30ごろ内容修正)
|
45
|
+
List<BasketBean> basketList=new ArrayList<>();
|
46
|
+
basketList.add(session_rq);
|
47
|
+
session.setAttribute("baskets", basketList);
|
40
48
|
|
41
|
-
session_rq.getName();
|
42
|
-
session_rq.getOrderNum();
|
43
|
-
session_rq.getStock();
|
44
|
-
|
45
49
|
return "basket/basket_list";
|
46
50
|
}
|
47
51
|
|
48
52
|
/*
|
49
53
|
* 商品を買い物かごへ追加する
|
50
54
|
*/
|
51
|
-
@RequestMapping(path = "/
|
55
|
+
@RequestMapping(path = "/add", method = RequestMethod.POST)
|
52
56
|
public String addItem(Model model, @ModelAttribute("BasketBean") BasketBean bas_rq) {
|
53
57
|
|
54
58
|
setBasketBean(bas_rq);
|
55
59
|
return "redirect:/basket/list";
|
56
60
|
}
|
57
61
|
```
|
58
|
-
|
62
|
+
一覧表示画面のテーブル部分を抜粋しています。
|
63
|
+
out.html
|
64
|
+
```html
|
65
|
+
<tr th:each="basket: ${baskets}">
|
66
|
+
<td th:text="${basket.name}"></td>
|
67
|
+
<td th:text="${basket.orderNum}"></td>
|
68
|
+
<td th:text="${basket.stock}"></td>
|
69
|
+
</tr>
|
59
70
|
```
|
60
|
-
コード
|
61
|
-
```
|
62
71
|
|
63
72
|
### 試したこと
|
64
73
|
|
65
74
|
[Spring BootでSessionを扱う(SessionAttribute版)](https://blog.okazuki.jp/entry/2015/07/05/214538)
|
75
|
+
|
66
76
|
[Spring書き込み編_番外.リクエストされた値をセッションに入れる](https://qiita.com/shibafu/items/f46f0fd529554b8cc1b2)
|
67
77
|
|
78
|
+
[TERASOLUNA Global Framework Development Guideline 1.0.0.publicreview documentation](https://terasolunaorg.github.io/guideline/public_review/ArchitectureInDetail/SessionManagement.html#sessionattributes)
|
68
79
|
上記のサイトを参考にしてソースを書きました。
|
69
80
|
|
81
|
+
```java
|
82
|
+
List<BasketBean> basketList=new ArrayList<>();
|
83
|
+
basketList.add(session_rq);
|
84
|
+
session.setAttribute("baskets", basketList);
|
85
|
+
```
|
86
|
+
|
87
|
+
上記の部分を試行錯誤しているのですが、うまくいきません。
|
88
|
+
買い物カゴに追加された商品を一覧表示するのにはリストは必要なのでしょうか?
|
89
|
+
|
70
90
|
### 補足情報(FW/ツールのバージョンなど)
|
71
91
|
Spring Framework4(Spring Boot2.1.1)
|
72
92
|
thymeleaf3.0.11
|