728x90
회원 웹 기능 - 등록
회원 등록 폼 컨트롤러
package hello.hellospring.controller;
import hello.hellospring.service.MemberService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
@Controller
public class MemberController {
@Autowired private final MemberService memberService;
public MemberController(MemberService memberService) {
this.memberService = memberService;
}
@GetMapping("/Members/new")
public String createForm() {
return "members/createMemberForm";
}
}
회원 등록 폼 HTML
<!-- /members/createMemberForm.html -->
<!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>
localhost:8080 요청하여 회원가입을 누르면 다음 화면 출력
MemberController에 아래 코드를 추가
post 요청으로 members/new로 요청하면서 member 객체를 생성하고 이름을 setName으로 저장한 후 getName() 메서드로 가져와서 회원가입을 하고 redirect 요청으로 홈 화면으로 가는 로직이다.
@PostMapping("/members/new")
public String create(MemberForm form) {
Member member = new Member();
member.setName(form.getName());
memberService.join(member);
return "redirect:/";
}
이제 이름을 입력한 후 등록을 누르면 등록 후 홈 화면으로 넘어가지게 된다.
728x90
'스프링 부트 > 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술' 카테고리의 다른 글
25. AOP 적용 (0) | 2023.03.13 |
---|---|
17. 회원 웹 기능 - 조회 (0) | 2023.03.13 |
24. AOP가 필요한 상황 (0) | 2023.03.12 |
18~23. 스프링 DB 접근 기술 (0) | 2023.03.11 |
15. 회원 웹 기능 - 홈 화면 추가 (0) | 2023.03.11 |