Spring

[Spring] 회원등록 불러오기

songsua 2025. 3. 4. 00:11
package org.example.springstudy.controller;

import org.springframework.ui.Model;

import lombok.RequiredArgsConstructor;
import org.example.springstudy.domain.Member;
import org.springframework.stereotype.Controller;
import org.example.springstudy.service.Memberservice;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;

import java.util.List;

@Controller
@RequiredArgsConstructor
public class MemberController {
    private final Memberservice memberservice;

    @GetMapping("/members/new")
    public String createForm() {
        return "/members/creatememberForm";
    }


    @PostMapping("/members/new")
    public String create(MemberForm form) {
        Member member = new Member();
        member.setName(form.getName());

        memberservice.join(member);
        return "redirect:/";
    }

    @GetMapping("/members")
    public String list(Model model) {
        List<Member> members = memberservice.findMembers();
        model.addAttribute("members", members);
        return "/members/list";
    }
}

 

addAttribute 는 
1️⃣ 사용자가 /greeting URL로 접속하면 이 메서드가 실행됨.
2️⃣ model.addAttribute("message", "안녕하세요, Spring!"); → "message"라는 키로 데이터를 저장.
3️⃣ "greeting"을 반환하면, Spring Boot가 src/main/resources/templates/greeting.html 파일을 찾아서 보여준다.
4️⃣ greeting.html에서 message 값을 표시할 수 있음.

 

<!DOCTYPE HTML>
<html xmlns:th="http://www.thymeleaf.org">
<body>
<div class="container">
  <div>
    <table>
      <thead>
      <tr>
        <th>#</th>
        <th>이름</th> </tr>
      </thead>
      <tbody>
      <tr th:each="member : ${members}">
        <td th:text="${member.id}"></td>
        <td th:text="${member.name}"></td>
      </tr>
      </tbody>
    </table>
  </div>
</div> <!-- /container -->
</body>
</html> ```

text = {member.id} 라는 값으로 값을 저장한다

member을 list 로 모든 값을 저장한다.

루프를 돌면서,

<tr th:each="member : ${members}">
  <td th:text="${member.id}"></td>
  <td th:text="${member.name}"></td>

해당 코드를 계속해서 실행한다.

memder 리스트에 id 와 name을 출력한다.

<!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>

회원가입할때 id = name, name = name 에 저장하게 해둠 

'Spring' 카테고리의 다른 글

[Spring] Spring으로 변환하기  (0) 2025.03.23
[Spring] 주문과 할인 도메인 설계  (0) 2025.03.16
[Spring] 회원게시판 만들어보기  (1) 2025.03.02
[Spring] 웹 기초  (0) 2025.03.01