웹 MVC 개발

slee2·2021년 11월 5일
0
post-thumbnail

버튼이 있는 홈페이지 만들기

HomeController.java

Home.html

실행화면

여기서 봐야할건 static 정적 홈페이지가 있는데도 불구하고 hello.html파일이 실행되었다는 점이다. 이전 글에 써져있는데 처음에 요청이 오면 처음에 스프링 컨테이너를 찾아보고 없으면 static을 찾게 된다. 즉 우선 순위가 있기 때문에 우선 순위가 더 높은 Controller가 실행되는 것이다.

회원가입 등록 만들기

home.html파일을 살펴보면 회원가입 버튼을 누르면 /member/new로 이동하는 것을 알 수 있다. localhost8080:/member/new를 뜻한다.

MemberController@GetMapping을 통해 members/createMemberForm.html으로 이동하게 된다.

createMemberForm.html

위에서 <form action"/members/new" method="post">
/members/newpost방식으로 보낸다는 뜻이다. 그럼 이걸 어떻게 받냐,

위처럼 @PostMapping어노테이션을 사용하면 post방식을 받게 된다.
그러면 MemberForm으로 값을 받게 되고, MemberForm의 setter로 자동 처리가 된다. 참고로 MemBerForm

이렇게 있다. html에서 form 안에 nameMemberFormname으로 설정이 된다.

실행화면

회원 목록 버튼

/members로 이동하게 되면 Model 인터페이스를 생성하고, 각 멤버들을 리스트로 작성한 뒤, "members"에 넣은 값들을 members/memberList.html로 넘기게 된다.

memberList.html

여기서 thymeleaf - th의 문법이 사용되는데
중간에 th:each="member : ${members}에서 members가 없을 때까지 반복문을 돌게 된다. 그리고 그 반복문에서 idnamegetter방식으로 꺼내서 출력하는 방식이다.

결과화면

회원 가입으로 spring1과 spring2를 등록한 후 회원 조회를 했을때의 화면이다.

그런데 위의 데이터는 스프링을 끄면 사라지게 된다. 이를 사라지지 않기 위해 사용하는 것이 데이터베이스이다. 다음 글은 데이터베이스와 관련된 글이다.

인프런 홈페이지 - https://www.inflearn.com/
강의 제목 - 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

0개의 댓글