Coding/Spring(Boot)

[Spring]회원 웹 기능 - 등록

민톨이 2024. 6. 11. 17:42
728x90

페이지 틀을 위한 HTML코드

 

//home.html

 

 

//createMemberForm.html

 

여기서 이 코드를 보자.

<input type="text" id="name" name="name" placeholder="이름을 입력하세요">

 

name="name"이 post로 name 데이터를 넘겨주고 스프링이 하단의 setName으로 값을 넘겨준다.

그럼 getName으로 값을 꺼낼 수 있다.

(여기서 name은 private String name의 값.)

 


기능 구현을 위한 Controller (및 자바코드)

 

//MemberForm.java

 

member 객체 생성을 위해 name을 선언 후 getter/ setter를 해준다.

 

 

//MemberController.java

 

member객체 생성.

 

return "redirect:/";는 홈화면으로 보내는 코드

 

 

createMemberForm.html에 있는

<form action="/members/new" method="post">

 

이 코드는 name에 적은 값을 members/new로 post방식으로 넘어가게 해준다.

post방식으로 넘어가면 name값은 MemberController의 @PostMapping을 통과하여 create라는 메서드가 호출되면서 값이 들어온다.

 

(data를 전달하는 방식이니 method="post"를 사용한 것이다)

 

+ data를 form같은 곳에 넣어서 전달할때 post를 쓰고, 조회할때 get을 주로 쓴다.

위 코드를 보면 ("/members/new")로 url은 같지만 get/post방식으로 따로 쓸 수 있다.

 

     memberService.join(member);

 

getName으로 꺼낸 값을 여기로 넘겨 member가 가입(join)이 되는 구조이다.

 


여기까지 이해를 했다면 등록 form에 이름을 적어보자

 

이렇게 이름을 spring!으로 등록한다면

 

System.out.println으로 찍어서 확인해주면 값이 잘 들어온 것을 확인할 수 있다.