본문 바로가기
Server/Spring

회원 관리 - 프론트) 2. 회원 등록하기

by print_soo 2024. 8. 25.

1. 파일 생성

파일 경로: main/java/파일명/Controller/MemberForm

 

해당 경로로 MemberForm.java를 만들어준다.

 

package section4.section4_spring.controller;

public class MemberForm {
    private String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

 

해당 파일을 만든 이유는 폼을 들어올 데이터를 처리하기 위해서 이다. 

 

2. 멤버 컨트롤러에 메서드 추가

//URL 진입 시 처리될 코드
@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:/";
}

 

 

포스트 매핑 부분만 살펴보자.

[작동 방식]

1. 멤버 객체를 만든다.
2. 폼으로 들어온 데이터의 이름을 멤버 객체의 setter로 멤버 객체의 이름을 저장한다.
3. 서비스의 회원가입 메소드를 활용해 해당 객체를 회원등록한다.
4. 모든 과정이 완료되면 홈화면으로 돌아간다.

 

3. HTML 작성

파일 경로: main/resources/templates/member/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="이름을 입력하세요">
            <button type="submit">등록</button>
        </div>
    </form>
</div> <!-- /container -->
</body>
</html>