質問編集履歴

5

コード部微修正(再)

2018/05/21 04:31

投稿

S.niranira
S.niranira

スコア19

test CHANGED
File without changes
test CHANGED
@@ -88,7 +88,9 @@
88
88
 
89
89
  </tbody>
90
90
 
91
- </table>```
91
+ </table>
92
+
93
+ ```
92
94
 
93
95
  ```java
94
96
 

4

コード部微修正

2018/05/21 04:31

投稿

S.niranira
S.niranira

スコア19

test CHANGED
File without changes
test CHANGED
@@ -50,79 +50,79 @@
50
50
 
51
51
  ```html
52
52
 
53
- <table class="table table-striped table-bordered table-hover list ">
53
+ <table class="table table-striped table-bordered table-hover list ">
54
54
 
55
- <thead>
55
+ <thead>
56
56
 
57
- <tr>
57
+ <tr>
58
58
 
59
- <th>Action</th>
59
+ <th>Action</th>
60
60
 
61
- <th>クラス</th>
61
+ <th>会員種別</th>
62
62
 
63
- <th>種別</th>
63
+ <th>料金名</th>
64
64
 
65
- <th>価格</th>
65
+ <th>金額</th>
66
66
 
67
- <th>数</th>
67
+ <th>無料アカウント数</th>
68
68
 
69
- </tr>
69
+ </tr>
70
70
 
71
- </thead>
71
+ </thead>
72
72
 
73
- <tbody id="test_table1" th:each="row, stat : ${itemList}">
73
+ <tbody id="test_table1" th:each="row, stat : ${itemList}">
74
74
 
75
- <tr>
75
+ <tr>
76
76
 
77
- <td><input type="button" value="追加" onclick="insertRow('test_table1')" /></td>
77
+ <td><input type="button" value="追加" onclick="insertRow('test_table1')" /></td>
78
78
 
79
- <td><input type="text" name="membarType" th:name="'membarType[' + ${stat.index} + ']'" th:value="${row.membarType}" ></td>
79
+ <td><input type="text" name="membarType" th:name="'membarType[' + ${stat.index} + ']'" th:value="${row.membarType}" ></td>
80
80
 
81
- <td><input type="text" name="ratesCode" th:name="'ratesCode[' + ${stat.index} + ']'" th:value="${row.ratesCode}" ></td>
81
+ <td><input type="text" name="ratesCode" th:name="'ratesCode[' + ${stat.index} + ']'" th:value="${row.ratesCode}" ></td>
82
82
 
83
- <td><input type="text" name="amount" th:name="'amount[' + ${stat.index} + ']'" th:value="${row.amount}" ></td>
83
+ <td><input type="text" name="amount" th:name="'amount[' + ${stat.index} + ']'" th:value="${row.amount}" ></td>
84
84
 
85
- <td><input type="text" name="freeAccounts" th:name="'freeAccounts[' + ${stat.index} + ']'" th:value="${row.freeAccounts}" ></td>
85
+ <td><input type="text" name="freeAccounts" th:name="'freeAccounts[' + ${stat.index} + ']'" th:value="${row.freeAccounts}" ></td>
86
86
 
87
- </tr> </tbody>
87
+ </tr>
88
88
 
89
- </table>
89
+ </tbody>
90
90
 
91
- ```
91
+ </table>```
92
92
 
93
93
  ```java
94
94
 
95
- @RequestMapping(params="selectInput", method=RequestMethod.POST)
95
+ @RequestMapping(params="selectInput", method=RequestMethod.POST)
96
96
 
97
- public String postSearch2(
97
+ public String postSearch2(
98
98
 
99
- @ModelAttribute inputmodel formList,
99
+ @ModelAttribute inputmodel formList,
100
100
 
101
- Model model){
101
+ Model model){
102
102
 
103
103
 
104
104
 
105
-         ~~ 略 ~~
105
+       ~~ 略 ~~
106
106
 
107
107
 
108
108
 
109
- }
109
+ }
110
110
 
111
111
 
112
112
 
113
- @Data
113
+ @Data
114
114
 
115
- public static class inputmodel {
115
+ public static class inputmodel {
116
116
 
117
- List<String> membarType;
117
+ List<String> membarType;
118
118
 
119
- List<String> ratesCode;
119
+ List<String> ratesCode;
120
120
 
121
- List<String> amount;
121
+ List<String> amount;
122
122
 
123
- List<String> freeAccounts;
123
+ List<String> freeAccounts;
124
124
 
125
- }
125
+ }
126
126
 
127
127
  ```
128
128
 

3

htmlを修正

2018/05/21 04:30

投稿

S.niranira
S.niranira

スコア19

test CHANGED
File without changes
test CHANGED
@@ -76,17 +76,15 @@
76
76
 
77
77
  <td><input type="button" value="追加" onclick="insertRow('test_table1')" /></td>
78
78
 
79
- <td><input type="text" name="membarType" th:name="'id[' + ${stat.index} + ']'" th:value="${row.id}" ></td>
79
+ <td><input type="text" name="membarType" th:name="'membarType[' + ${stat.index} + ']'" th:value="${row.membarType}" ></td>
80
80
 
81
- <td><input type="text" name="ratesCode" th:name="'id[' + ${stat.index} + ']'" th:value="${row.id}" ></td>
81
+ <td><input type="text" name="ratesCode" th:name="'ratesCode[' + ${stat.index} + ']'" th:value="${row.ratesCode}" ></td>
82
82
 
83
- <td><input type="text" name="amount" th:name="'id[' + ${stat.index} + ']'" th:value="${row.id}" ></td>
83
+ <td><input type="text" name="amount" th:name="'amount[' + ${stat.index} + ']'" th:value="${row.amount}" ></td>
84
84
 
85
- <td><input type="text" name="freeAccounts" th:name="'id[' + ${stat.index} + ']'" th:value="${row.id}" ></td>
85
+ <td><input type="text" name="freeAccounts" th:name="'freeAccounts[' + ${stat.index} + ']'" th:value="${row.freeAccounts}" ></td>
86
86
 
87
- </tr>
88
-
89
- </tbody>
87
+ </tr> </tbody>
90
88
 
91
89
  </table>
92
90
 

2

質問内容の修正

2018/05/21 04:28

投稿

S.niranira
S.niranira

スコア19

test CHANGED
@@ -1 +1 @@
1
- Springにおいて画面のリスト状になっている情報をDBに登録したい
1
+ Springにおいて画面のリスト状になっている情報をコントローラーで取得したい
test CHANGED
@@ -6,13 +6,19 @@
6
6
 
7
7
  手法としてできないかを質問させていただいております。
8
8
 
9
+ リスト型の情報をDBに登録する手段としてMyBatisの「BulkInsert」というものが使用できるとのことで、DB登録については解決しました。
10
+
11
+ (問題なく処理が行われるかは開発時に調べます。)
12
+
9
13
 
10
14
 
11
15
  ### 実現したいこと
12
16
 
13
17
 
14
18
 
15
- 画面上で<table>タグで囲われたリスト状になっている情報をDBに登録をしたいです。
19
+ 画面上で<table>タグで囲われたリスト状になっている情報を~~DBに登録をしたいです。~~
20
+
21
+ コントローラーで取得したいです。
16
22
 
17
23
  ![登録時に使用するリスト型](a758e9f3c1751f3032a79ecc2c673fb2.png)
18
24
 
@@ -22,13 +28,9 @@
22
28
 
23
29
  そのリストの行数分DBに登録をしていく形で実装を行いたいです。
24
30
 
25
- **<追記開始>**
26
-
27
31
  リストの加減は表左側の「追加」「削除」をクリックすることで入力行を加減します。
28
32
 
29
33
  DBからのリストで変動するのではなく、あくまでクライアント側での操作によりリストが加減する形です。
30
-
31
- **<追記終了>**
32
34
 
33
35
 
34
36
 
@@ -40,40 +42,108 @@
40
42
 
41
43
 
42
44
 
43
- DB側のテーブル構成は上記のリストと全く同じ形式で作成しているため、リストのレコードをそのままDBに登録できれば問題ないです。
44
-
45
45
  **<追記開始>**
46
46
 
47
- DB定義は以下の通りです。
48
-
49
- |項目名|カラム名|データ型|INDEX|制約|
50
-
51
- |:--|:--:|:--:|:--:|--:|
52
-
53
- |ID|id|int|-|Pkey, Auto, NotNull|
54
-
55
- |紐付コド|joinCode|Varchar(10)|1|NotNull|
47
+ A-pZ様のご回答を参考に作ってみたのですが、デタが取得できませんでした。
56
-
57
- |クラス|class|Varchar(2)|2|NotNull|
58
-
59
- |種別|type|Varchar(6)|-|NotNull|
60
-
61
- |価格|price|decimal(10,0)|-|NotNull|
62
-
63
- |個数|articlesNum|int|-|NotNull|
64
-
65
- |登録者ID|regId|int|2|NotNull|
66
-
67
- |登録日付|regDate|datetime(3)|-|NotNull|
68
-
69
- |更新者ID|modId|int|-|NotNull|
70
-
71
- |更新日付|modDate|datetime(3)|-|NotNull|
72
48
 
73
49
 
50
+
51
+ ```html
52
+
53
+ <table class="table table-striped table-bordered table-hover list ">
54
+
55
+ <thead>
56
+
57
+ <tr>
58
+
59
+ <th>Action</th>
60
+
61
+ <th>クラス</th>
62
+
63
+ <th>種別</th>
64
+
65
+ <th>価格</th>
66
+
67
+ <th>個数</th>
68
+
69
+ </tr>
70
+
71
+ </thead>
72
+
73
+ <tbody id="test_table1" th:each="row, stat : ${itemList}">
74
+
75
+ <tr>
76
+
77
+ <td><input type="button" value="追加" onclick="insertRow('test_table1')" /></td>
78
+
79
+ <td><input type="text" name="membarType" th:name="'id[' + ${stat.index} + ']'" th:value="${row.id}" ></td>
80
+
81
+ <td><input type="text" name="ratesCode" th:name="'id[' + ${stat.index} + ']'" th:value="${row.id}" ></td>
82
+
83
+ <td><input type="text" name="amount" th:name="'id[' + ${stat.index} + ']'" th:value="${row.id}" ></td>
84
+
85
+ <td><input type="text" name="freeAccounts" th:name="'id[' + ${stat.index} + ']'" th:value="${row.id}" ></td>
86
+
87
+ </tr>
88
+
89
+ </tbody>
90
+
91
+ </table>
92
+
93
+ ```
94
+
95
+ ```java
96
+
97
+ @RequestMapping(params="selectInput", method=RequestMethod.POST)
98
+
99
+ public String postSearch2(
100
+
101
+ @ModelAttribute inputmodel formList,
102
+
103
+ Model model){
104
+
105
+
106
+
107
+         ~~ 略 ~~
108
+
109
+
110
+
111
+ }
112
+
113
+
114
+
115
+ @Data
116
+
117
+ public static class inputmodel {
118
+
119
+ List<String> membarType;
120
+
121
+ List<String> ratesCode;
122
+
123
+ List<String> amount;
124
+
125
+ List<String> freeAccounts;
126
+
127
+ }
128
+
129
+ ```
74
130
 
75
131
  **<追記終了>**
76
132
 
77
133
 
78
134
 
135
+ **<削除開始>**
136
+
137
+ ~~DB側のテーブル構成は上記のリストと全く同じ形式で作成しているため、リストのレコードをそのままDBに登録できれば問題ないです。~~
138
+
139
+ ~~**<追記開始>**~~
140
+
141
+ ~~DB定義は以下の通りです。~~
142
+
143
+ ~~**<追記終了>**~~
144
+
145
+ **<削除終了>**
146
+
147
+
148
+
79
149
  お手数ですが、よろしくお願いします。

1

リストの加減方法、DB定義を追記

2018/05/21 02:55

投稿

S.niranira
S.niranira

スコア19

test CHANGED
File without changes
test CHANGED
@@ -22,6 +22,14 @@
22
22
 
23
23
  そのリストの行数分DBに登録をしていく形で実装を行いたいです。
24
24
 
25
+ **<追記開始>**
26
+
27
+ リストの加減は表左側の「追加」「削除」をクリックすることで入力行を加減します。
28
+
29
+ DBからのリストで変動するのではなく、あくまでクライアント側での操作によりリストが加減する形です。
30
+
31
+ **<追記終了>**
32
+
25
33
 
26
34
 
27
35
  自分なりに調べてみたところ、以下のページに記載してあるものが近い実装かと思っておりますが、
@@ -34,6 +42,38 @@
34
42
 
35
43
  DB側のテーブル構成は上記のリストと全く同じ形式で作成しているため、リストのレコードをそのままDBに登録できれば問題ないです。
36
44
 
45
+ **<追記開始>**
46
+
47
+ DB定義は以下の通りです。
48
+
49
+ |項目名|カラム名|データ型|INDEX|制約|
50
+
51
+ |:--|:--:|:--:|:--:|--:|
52
+
53
+ |ID|id|int|-|Pkey, Auto, NotNull|
54
+
55
+ |紐付コード|joinCode|Varchar(10)|1|NotNull|
56
+
57
+ |クラス|class|Varchar(2)|2|NotNull|
58
+
59
+ |種別|type|Varchar(6)|-|NotNull|
60
+
61
+ |価格|price|decimal(10,0)|-|NotNull|
62
+
63
+ |個数|articlesNum|int|-|NotNull|
64
+
65
+ |登録者ID|regId|int|2|NotNull|
66
+
67
+ |登録日付|regDate|datetime(3)|-|NotNull|
68
+
69
+ |更新者ID|modId|int|-|NotNull|
70
+
71
+ |更新日付|modDate|datetime(3)|-|NotNull|
72
+
73
+
74
+
75
+ **<追記終了>**
76
+
37
77
 
38
78
 
39
79
  お手数ですが、よろしくお願いします。