전 게시글 https://changha-dev.tistory.com/145 에 이어 이번에는
html에 입력한 정보를 Controller에 가져오는 걸 해보겠습니다.
먼저
controller 패키지 => MemberController 생성
templates 패키지 => save.html 생성
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Index</title>
</head>
<body>
<h1> Index Page!</h1>
<a href="/member/save">회원가입</a>
<a href="/member/login">로그인</a>
</body>
</html>
index.html 수정
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Save</title>
</head>
<body>
<!-- action : form에 작성한 데이터를 어디로 보낼지 지정 -->
<form action="/member/save" method="post">
<!-- name : 서버로 전송 할 때 변수이름의 역할 -->
이메일: <input type="text" name="memberEmail"> <br>
비밀번호: <input type="password" name="memberPassword"> <br>
이름: <input type="text" name="memberName"> <br>
<input type="submit" value="회원가입">
</form>
</body>
</html>
save.html
저번에 만든 homeController와 같이
이번에는 Member를 관리하는 Controller를 만들겠습니다.
package com.example.member.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
@Controller
public class MemberController {
// 회원가입 페이지 출력 요청
@GetMapping("/member/save")
public String saveForm() {
return "save";
}
@PostMapping("/member/save") // name값을 requestparam에 담아온다
public String save(@RequestParam("memberEmail") String memberEmail,
@RequestParam("memberPassword") String memberPassword,
@RequestParam("memberName") String memberName) {
System.out.println("MemberController.save");
System.out.println("memberEmail = " + memberEmail + ", memberPassword = " + memberPassword + ", memberName = " + memberName);
return "index";
}
}
@PostMapping : save.html의 <form> method : post => 정보 전달을 의미 하므로 PostMapping으로 정보를 받아줍니다.
@RequestMapping : save.html의 <input> name 과 일치하게 작성한 후 파라미터로 정보를 받아 옵니다.
실행해 보면
회원가입 버튼을 누르면
return index 로 인해 index페이지로 이동합니다.
로그창을 보면
위와 같이 출력 됩니다.
간단히 html에서 controller로 정보를 가져오는 방법을 살펴 보았습니다.
'개발' 카테고리의 다른 글
[Spring Boot] 스프링 부트 로그인 구현 (0) | 2023.02.11 |
---|---|
[Spring Boot] MySQL DB와 연동하기 (0) | 2023.02.10 |
[Spring Boot] 스프링부트 환경세팅 후 웹페이지 실행 (0) | 2023.02.09 |
[안드로이드] Retrofit 연결하기 (0) | 2021.05.30 |
[앱 개발 리뷰] 안드로이드 로또 앱 만들기 과정/소개 #1<오늘은 로또왕> (0) | 2021.02.24 |