[Spring]@ModelAttributeでFromクラスを初期化するサンプル

説明
@ModelAttributeアノテーション
1.受け取るFormクラスを初期化して戻す
2.@RequestMappingアノテーションのメソッド実行前呼ぶ
3.リクエストスコープを設定

使用例

@Controller
@RequestMapping("users")
public class UserController {

  /*Formクラスを初期化*/
  @ModelAttribute
  UserForm setupForm() {
    return new UserForm();
  }
  
  @RequestMapping(value="update", method = RequestMethod.POST)
  public String update(@Validated UserForm form,BindingResult result,Model model){
    if(result.hasErrors()) {
       //some code
      }

   User user = new User();
   BeanUtils.copyProperties(form, user);
   //some code
   
    return "redirect:/users"   
  }
  

}

 

SpringMVC

Posted by arkgame