철학과 학생의 개발자 도전기

[Spring] 스프링 입문 - 섹션 5. 회원 관리 예제 - 웹 MVC 개발 본문

Spring

[Spring] 스프링 입문 - 섹션 5. 회원 관리 예제 - 웹 MVC 개발

Younghun 2022. 10. 9. 18:34

홈 화면 추가

홈 화면을 추가하기 위해 HomeController와 home.html을 만들었다. 기존에 있던 index.html은 컨트롤러를 모두 탐색한 후에도 홈 화면이 없으면 띄우기 때문에 우선순위가 밀리게 된다.

 

이제 main파일을 실행시켜서 서버를 돌려보자! 그러면 다음과 같이 홈 화면이 잘 출력되는 것을 볼 수 있다.


등록

이제 회원 등록 기능을 웹에서 수행할 수 있도록 만들 것이다. MemberController에 createForm 클래스를 만든다.

그리고 해당하는 html파일을 불러오도록 설정한다.

 

실행시키면 다음과 같은 화면이 나온다.

이제 이름을 입력한 후 등록을 누르면 실제로 회원 등록이 되도록 만들 것이다.

 

MemberForm 클래스를 새로 만들고 기존에 만든 MemberController에 create이라는 메소드를 만들어준다.

기존에는 @GetMapping을 사용했다. 하지만 create에는 @PostMapping을 사용해야 한다.

url에 직접 접속을 하면 Get 방식을 사용하므로 createForm 메소드가 호출된다. 이로 인해 createMemberForm.html을 이용해서 웹페이지를 띄우게 된다. 그 후 이름을 입력하고 등록을 누르면 Post 방식을 이용해 입력된 이름을 서버로 보내게 된다. 이때는 @PostMapping이 붙은 create 메소드가 호출되서 회원 등록이 이루어진다.


조회

이제 등록된 회원을 조회해서 볼 수 있도록 만들 것이다.

조회이기 때문에 @GetMapping을 사용한다. 조회한 멤버들을 리스트에 담은 후 memberList.html을 호출한다.

 

이번에는 thymeleaf 문법을 사용해서 html을 만들었다.

th:each는 Java의 for-each문법처럼 members에서 member를 하나씩 가져오는 것이다. 그 후 meber의 id와 name을 출력하고 다음 member를 가져온다. 웹페이지에서 확인해보면 다음처럼 나온다.

 

하지만 아직 DB연결을 안 하고 메모리에서 임시로 회원 등록을 하기 때문에 서버를 재실행시키면 전부 날아가는 데이터들이다. 이제 다음 시간에 DB연결을 해 볼 예정이다.