[Spring] @PostMapping


次のhtmlページを検索します.

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
  <meta charset="UTF-8">
  <title>createMemberForm</title>
</head>
<body>

<div class="container">
  <form action="/members/new" method="post"> <!--post 방식으로 데이터를 넘기면 @PostMapping으로 연결된다.
  단순히 url을 입력하는 방식은 @GetMapping으로 넘어간다.-->
    <div class="form-group">
      <label for="name">이름</label>
      <input type="text" id="name" name="name" placeholder="이름을 입력하세요">
    </div>
    <button type="submit">등록</button>
  </form>
</div> <!--container-->
</body>
</html>
実像は以下の通り.

上のコードの形式は「post」方式です.
そこでSpringはコントローラで"/members/new"パラメータを持つ@PostMappingを検索します.
    @PostMapping("/members/new")
    public String create(MemberForm form) {
        Member member = new Member();
        member.setName(form.getName());

        memberService.join(member);

        return "redirect:/";
    }
Springがフォームを通じて上記の方法を見つけたと仮定します.
MemberForm classにはString nameというフィールド変数があります.もちろん、メンバーフォームではgetterとsetterを実装する必要があります.
public class MemberForm {
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}
htmlコードでは、
タグにという要素があります.
「name」という名前のプロパティがあります.
これは、post方式でデータを渡すと、メンバーフォームの「name」値にユーザーが入力した値が含まれることを意味します.
このようにPost方式で動作します.