質問編集履歴

3

レイアウト直しました

2020/11/17 02:57

投稿

hidaruma86
hidaruma86

スコア8

test CHANGED
File without changes
test CHANGED
@@ -364,7 +364,7 @@
364
364
 
365
365
  ```
366
366
 
367
-
367
+ ReportIndexServlet
368
368
 
369
369
  ```java
370
370
 

2

修正しました

2020/11/17 02:57

投稿

hidaruma86
hidaruma86

スコア8

test CHANGED
File without changes
test CHANGED
@@ -4,6 +4,322 @@
4
4
 
5
5
  List<Report>型からListの中に入っている情報を取得する方法を知りたい
6
6
 
7
+ ```sql
8
+
9
+ List<Report>にはreportsテーブルが入っているのですがこれのemployee_idを取得したいです
10
+
11
+ +-------------------+--------------+------+-----+---------+----------------+
12
+
13
+ | Field | Type | Null | Key | Default | Extra |
14
+
15
+ +-------------------+--------------+------+-----+---------+----------------+
16
+
17
+ | id | int(11) | NO | PRI | NULL | auto_increment |
18
+
19
+ | content | longtext | NO | | NULL | |
20
+
21
+ | created_at | datetime | NO | | NULL | |
22
+
23
+ | reaction_nice_cnt | int(11) | NO | | NULL | |
24
+
25
+ | report_date | date | NO | | NULL | |
26
+
27
+ | title | varchar(255) | NO | | NULL | |
28
+
29
+ | updated_at | datetime | NO | | NULL | |
30
+
31
+ | employee_id | int(11) | NO | MUL | NULL | |
32
+
33
+ +-------------------+--------------+------+-----+---------+----------------+
34
+
35
+ ```
36
+
37
+ Report.java
38
+
39
+ ```java
40
+
41
+ package models;
42
+
43
+
44
+
45
+ import java.sql.Date;
46
+
47
+ import java.sql.Timestamp;
48
+
49
+
50
+
51
+ import javax.persistence.Column;
52
+
53
+ import javax.persistence.Entity;
54
+
55
+ import javax.persistence.GeneratedValue;
56
+
57
+ import javax.persistence.GenerationType;
58
+
59
+ import javax.persistence.Id;
60
+
61
+ import javax.persistence.JoinColumn;
62
+
63
+ import javax.persistence.Lob;
64
+
65
+ import javax.persistence.ManyToOne;
66
+
67
+ import javax.persistence.NamedQueries;
68
+
69
+ import javax.persistence.NamedQuery;
70
+
71
+ import javax.persistence.Table;
72
+
73
+
74
+
75
+ @Table(name = "reports")
76
+
77
+ @NamedQueries({
78
+
79
+ @NamedQuery(
80
+
81
+ name = "getAllReports",
82
+
83
+ // 全ての日報情報を取得
84
+
85
+ query = "SELECT r FROM Report AS r ORDER BY r.id DESC"
86
+
87
+ ),
88
+
89
+ @NamedQuery(
90
+
91
+ name = "getReportsCount",
92
+
93
+ // 日報の前件数を取得
94
+
95
+ query = "SELECT COUNT(r) FROM Report AS r"
96
+
97
+ ),
98
+
99
+ @NamedQuery(
100
+
101
+ name = "getMyAllReports",
102
+
103
+ // 自分の日報を先に登録した順番に並べ替える
104
+
105
+ query = "SELECT r FROM Report AS r WHERE r.employee = :employee ORDER BY r.id DESC"
106
+
107
+ ),
108
+
109
+ @NamedQuery(
110
+
111
+ name = "getMyReportsCount",
112
+
113
+ // 指定された日報がすでにデータベースに存在しているかを調べる
114
+
115
+ query = "SELECT COUNT(r) FROM Report AS r WHERE r.employee = :employee"
116
+
117
+ ),
118
+
119
+ })
120
+
121
+ @Entity
122
+
123
+ public class Report {
124
+
125
+ @Id
126
+
127
+ @Column(name = "id")
128
+
129
+ @GeneratedValue(strategy = GenerationType.IDENTITY)
130
+
131
+ private Integer id;
132
+
133
+
134
+
135
+ // @ManyToOneで多対一関連を定義
136
+
137
+ @ManyToOne
138
+
139
+ // @JoinColumnで統合に用いるカラムを指定
140
+
141
+ @JoinColumn(name = "employee_id", nullable = false)
142
+
143
+ private Employee employee;
144
+
145
+
146
+
147
+ // date型は年月日のみ
148
+
149
+ @Column(name = "report_date", nullable = false)
150
+
151
+ private Date report_date;
152
+
153
+
154
+
155
+ @Column(name = "title", length = 255, nullable = false)
156
+
157
+ private String title;
158
+
159
+
160
+
161
+ // @Lobとすることで改行もデータベースに保存される
162
+
163
+ @Lob
164
+
165
+ @Column(name = "content", nullable = false)
166
+
167
+ private String content;
168
+
169
+
170
+
171
+ @Column(name = "created_at", nullable = false)
172
+
173
+ private Timestamp created_at;
174
+
175
+
176
+
177
+ @Column(name = "updated_at", nullable = false)
178
+
179
+ private Timestamp updated_at;
180
+
181
+
182
+
183
+ @Column(name = "reaction_nice_cnt", nullable = false)
184
+
185
+ private Integer reaction_nice_cnt;
186
+
187
+
188
+
189
+ public Integer getId() {
190
+
191
+ return id;
192
+
193
+ }
194
+
195
+
196
+
197
+ public void setId(Integer id) {
198
+
199
+ this.id = id;
200
+
201
+ }
202
+
203
+
204
+
205
+ public Employee getEmployee() {
206
+
207
+ return employee;
208
+
209
+ }
210
+
211
+
212
+
213
+ public void setEmployee(Employee employee) {
214
+
215
+ this.employee = employee;
216
+
217
+ }
218
+
219
+
220
+
221
+ public Date getReport_date() {
222
+
223
+ return report_date;
224
+
225
+ }
226
+
227
+
228
+
229
+ public void setReport_date(Date report_date) {
230
+
231
+ this.report_date = report_date;
232
+
233
+ }
234
+
235
+
236
+
237
+ public String getTitle() {
238
+
239
+ return title;
240
+
241
+ }
242
+
243
+
244
+
245
+ public void setTitle(String title) {
246
+
247
+ this.title = title;
248
+
249
+ }
250
+
251
+
252
+
253
+ public String getContent() {
254
+
255
+ return content;
256
+
257
+ }
258
+
259
+
260
+
261
+ public void setContent(String content) {
262
+
263
+ this.content = content;
264
+
265
+ }
266
+
267
+
268
+
269
+ public Timestamp getCreated_at() {
270
+
271
+ return created_at;
272
+
273
+ }
274
+
275
+
276
+
277
+ public void setCreated_at(Timestamp created_at) {
278
+
279
+ this.created_at = created_at;
280
+
281
+ }
282
+
283
+
284
+
285
+ public Timestamp getUpdated_at() {
286
+
287
+ return updated_at;
288
+
289
+ }
290
+
291
+
292
+
293
+ public void setUpdated_at(Timestamp updated_at) {
294
+
295
+ this.updated_at = updated_at;
296
+
297
+ }
298
+
299
+
300
+
301
+ public Integer getReaction_nice_cnt() {
302
+
303
+ return reaction_nice_cnt;
304
+
305
+ }
306
+
307
+
308
+
309
+ public void setReaction_nice_cnt(Integer reactio_nice_cnt) {
310
+
311
+ this.reaction_nice_cnt = reactio_nice_cnt;
312
+
313
+ }
314
+
315
+
316
+
317
+ }
318
+
319
+ ```
320
+
321
+
322
+
7
323
  ```error
8
324
 
9
325
  HTTPステータス 500 - Index: 15, Size: 15

1

レイアウト直しましたよろしくお願いします

2020/11/17 01:37

投稿

hidaruma86
hidaruma86

スコア8

test CHANGED
File without changes
test CHANGED
@@ -1,8 +1,8 @@
1
1
  ### 前提・実現したいこと
2
2
 
3
- Index: 15, Size: 15
4
-
5
- typeのエラーが表示されたのかを知りたい
3
+ Index: 15, Size: 15typeのエラーが表示されたのかを知りたい
4
+
5
+ List<Report>型からListの中に入っている情報を取得する方法を知りたい
6
6
 
7
7
  ```error
8
8