「SpringMVC」@ModelAttributeアノテーションでインスタンスを返す

構文
@ModelAttribute
public クラス名 メソッド名(){
方法1
return new クラス名();

方法2
クラス名 オブジェクト名 = new クラス名();
オブジェクト名.メソッド名(値);
return オブジェクト名
}
@ModelAttribute はメソッドパラメーターまたはメソッドの戻り値を名前付きモデル属性にバインドし、Web ビューに公開するアノテーション。

使用例

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

  //Logger変数の宣言
  private static final Logger logger = LoggerFactory.getLogger(UserController.class);

 //DIの設定
  @AutoWired
  UserForm form;
  
  @RequestMapping(value = "user", method = RequestMethod.GET)
  public String user(UserForm form) { 
    logger.info("Test 123");
      //処理コード
    return "user";
  }
  
 //インスタンスが返される
  @ModelAttribute
  public UserForm setupForm(){ 
    return this.form;
  }
  
}

 

SpringMVC

Posted by arkgame