実現したいこと:HTMLのformの情報をControllerに渡す(検索して表示した結果を更新するため)
現状:Controller側のKakeiboForm formがnull
<form method="post" action="/searchresult" th:object="${KakeiboForm}"> <div th:if="${! #lists.isEmpty(datalist)}"> <table border="1"> <tr> <th></th> <th>日付 </th> <th>項目 </th> <th>金額 </th> <th>詳細 </th> <th>備考 </th> </tr> <!--以下に検索結果が表示されている--> <tr th:each="obj:${datalist}"> <td><input type="submit" formaction="/update" value="変更"> <td th:text="${obj.date}"></td> <td th:text="${obj.koumoku}"></td> <td th:text="${obj.kingaku}"></td> <td th:text="${obj.syousai}"></td> <td th:text="${obj.bikou}"></td> </tr> </table> </div> </form>
Controller
1@PostMapping("/update") 2 public ModelAndView update(@ModelAttribute("KakeiboForm") KakeiboForm form, Kakeibo entity, ModelAndView mav) { 3 mav.setViewName("update"); 4 mav.addObject("KakeiboForm", new KakeiboForm()); 5 mav.addObject("date",form.getDate()); 6 mav.addObject("koumoku",form.getKoumoku()); 7 mav.addObject("kingaku",form.getKingaku()); 8 mav.addObject("syousai",form.getSyousai()); 9 mav.addObject("bikou",form.getBikou()); 10 return mav; 11 }
public class KakeiboForm { private long id; private String date; private String koumoku; private int kingaku; private String syousai; private String bikou; public long getId() { return id; } public void setId(long id) { this.id = id; } public String getDate() { return date; } public void setDate(String date) { this.date = date; } public String getKoumoku() { return koumoku; } public void setKoumoku(String koumoku) { this.koumoku = koumoku; } public int getKingaku() { return kingaku; } public void setKingaku(int kingaku) { this.kingaku = kingaku; } public String getSyousai() { return syousai; } public void setSyousai(String syousai) { this.syousai = syousai; } public String getBikou() { return bikou; } public void setBikou(String bikou) { this.bikou = bikou; } }