[Spring 입문 6] 웹 MVC 개발: 회원 웹 기능- 홈 (tistory.com)
[Spring 입문 8] 웹 MVC 개발: 회원 웹 기능- 조회 (tistory.com)
- MemberController에 createForm추가
/** 회원 등록 폼*/
@GetMapping("/members/new")
public String createForm() {
return "members/createMemberForm";
}
- createMemberForm.html
- 위치: resources/templates/ members/ 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="이름을 입력하세요">
</div>
<button type="submit">등록</button>
</form>
</div> <!-- /container -->
</body>
</html>
- <input type="text" id="name" name="name" placeholder="이름을 입력하세요">
- 이 "name"이 서버(MemberForm)로 넘어간다!
- 회원등록컨트롤러
/** 웹 등록 화면에서 데이터를 전달 받을 폼 객체*/
public class MemberForm {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
- 회원등록폼에 입력한 이름이 name의 값
- MemberController에 create추가
/** 회원을 등록하는 기능*/
@PostMapping("/members/new")
public String create(MemberForm form) {
Member member = new Member();
member.setName(form.getName());
memberService.join(member);
return "redirect:/"; //홈화면으로
}
- 데이터를 조회할 땐 GetMapping을, 데이터를 등록(전달)할 땐 PostMapping을 쓴다.
createMemberForm의 button 선택 시
form action="/members/new" method="post"
→ MemberController의 create 로 전달된다.
@PostMapping("/members/new")
→ MemberController의 create 호출
@PostMapping("/members/new")
public String create(MemberForm form) {
Member member = new Member();
member.setName(form.getName()); //createMemberForm.html에 input된 name
memberService.join(member);
return "redirect:/"; //홈화면으로
}
→ createMemberForm 에 입력된 이름으로 회원을 등록한다.
- 회원등록폼에 입력한 이름을 출력해보자.
System.out.println("member= "+member.getName());
728x90
반응형
'Spring Tutorial' 카테고리의 다른 글
[Spring 입문 11] 스프링 DB 접근 기술: 스프링 통합 테스트 (0) | 2024.08.03 |
---|---|
[Spring 입문 8] 웹 MVC 개발: 회원 웹 기능- 조회 (0) | 2024.07.27 |
[Spring 입문 3] 회원 관리 예제 - 백엔드 개발 (0) | 2024.07.14 |
[Spring 입문 2] 스프링 웹 개발 기초 (정적컨텐츠, MVC와 템플릿엔진, API) (1) | 2024.04.28 |
[스프링MVC -상품 관리 웹 개발 8] RedirectAttributes (0) | 2023.09.04 |