Spring Boot; 훑어보기#2 – GetMapping, PostMapping

🗓️

@GetMapping, @PostMapping 사용법

@GetMapping("/members/new")
public String createForm() {
    return "members/createMemberForm";
}
@PostMapping("/members/new")
public String create(MemberForm form) {
    Member member = new Member();
    member.setName(form.getName());

    memberService.join(member);

    return "redirect:/";
}

URI를 매핑하고 템플릿으로 반환한다. (String)

<!-- ... -->
<form action="/members/new" method="post">
<div class="form-group">
  <label for="name">이름</label>
  <input type="text" id="name" name="name" placeholder="Input your name.">
</div>
<button type="submit">등록</button>
</form>
<!-- ... -->
<!-- ... -->
<table>
  <thead>
  <tr>
    <th>#</th>
    <th>이름</th>
  </tr>
  </thead>
  <tbody>
  <tr th:each="member : ${members}">
    <td th:text="${member.id}"></td>
    <!-- 알아서 getter에 접근한다 -->
    <td th:text="${member.name}"></td>
  </tr>
  </tbody>
</table>
<!-- ... -->

접근을 변수에 바로 하더라도 getter로 접근하여 (propperties방식) 반환받는다.

// Member class
//...
public Long getId() {
    return id;
}
//...
public String getName() {
    return name;
}
//...

@GetMapping 우선순위

  • Controller를 먼저 찾고
  • 없으면 static 파일을 찾는다.