회원 관리 예제 - 웹 MVC 개발 & 등록 & 조회

2022. 7. 30. 21:442022/Spring

Controller 아래 HomeController.java를, templates 아래 home.java를 두고 실행

아래와 같은 화면이 나오게 된다.

 

* 앞전에 index.html을 만들면서 동일한 URL ( = "/")에서 표출되는 화면을 정의한 적이 있다. 하지만 요청이 오면 스프링 컨테이너의 컨트롤러 안에 관련된 컨트롤러가 있는지 확인한 이후에 templates아래 html 파일이 있는지 찾기 때문에 우선순위는 전자 즉, 위와 같은 화면이 나오게 되는것이다.

 

등록
  1. MemberController.java의 createFrom메소드를 통해 /members/new와 매핑이 되어 createMemberForm.html로 넘어감
  2. CreateMemberForm.html로 부터 이름(name) 입력 받음 -> action의 url (="members/new")로 host 방식으로 넘어감
  3. 2번으로 부터 받은 name 값은 MemberForm의 name과 매핑됨 - MemberForm의 SetName 호출
  4. /members/new로 다시 넘어와서 MemberController.java의 create 메소드를 통해 폼에서 입력받은 name을 member 객체에 set
  5. memberService를 통해 회원가입 실행
  6. 다시 home 화면으로 돌아옴 (redirect)

Controller - MemberController.java

Get 방식으로 members/new로 넘어오게 되면, members/createMemberFrom으로 이동하게 된다.

 

Controller - MemberForm.java
Templatets - CreateMemberFrom.html

Url에 http에 method가 있는 것으로 조회할 때 쓰는 방식 = Get 방식
Form 같은 곳에 데이터를 넣어서 전달할 때 쓰는 방식 = Post 방식

 

조회

MemberController.java
memberList.html

memberController의 lilst 메소드를 통해 model에는 입력받은 이름과 id가 리스트 형태로 들어가있다. 그리고 이는 memberList.html로 넘어가게 되면서 테이블은 루프를 돌면서 각각 모델의 id 값과 name (domain>Member>getId & getName)을 출력한다.

 

 

* 서버를 내리면, 회원데이터는 메모리 안에 있기 때문에 모두 날아가게 된다. -> 파일이나 DB에 저장