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

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

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

使用例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
@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;
}
}
@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; } }
@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