회원의 웹 기능 - 등록

2023. 5. 2. 05:28카테고리 없음

package com.example.demo.controller;
public class MemberForm {
 private String name;
 public String getName() {
 return name;
 }
 public void setName(String name) { // 이 값으로 위에 String Name에 넣게됨 그리고 그 값이 html에 name 안으로 들어가게되는것.
 this.name = name;
 }
}
@Controller
public class MemberController {
 private final MemberService memberService;

 @Autowired
 public MemberController(MemberService memberService) {
 this.memberService = memberService;
 }

 @GetMapping(value = "/members/new") // Map : 어떤 값을 조회하기 위해 사용.
 public String createForm() { 
 return "members/createMemberForm"; // members의 createMemberform으로 이동.
 }

 @PostMapping(value = "/members/new") // URL 주소, Post : 무언가를 데이터를 등록할때 사용.
public String create(MemberForm form) { 
 Member member = new Member(); // 생성자 주입.
 member.setName(form.getName()); 
 memberService.join(member); //member 값을 넘김. 처음에 만들어 놨던 join 안에 들어가게 되는것.
 return "redirect:/"; //다시 홈으로 돌아감.
 }
}
<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<body>
<div class="container">
 <form action="/members/new" method="post"> 
 <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>