SpringMvc Controller2

su dong·2023년 7월 2일
0
package hello.servlet.web.springmvc.v3;

import hello.servlet.domain.member.Member;
import hello.servlet.domain.member.MemberRepository;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@Controller
@RequestMapping("/springmvc/v3/members")
public class SpringMemberControllerV3 {
    private MemberRepository memberRepository = MemberRepository.getInstance();

    @GetMapping("/new-form")
    public String newForm() {
        return "new-form";
    }


    @GetMapping
    public String list(Model model) {
        List<Member> members = memberRepository.findAll();
        model.addAttribute("members", members);
        return "members";
    }
    
    @PostMapping("/save")
    public String save(
            @RequestParam("username") String username,
            @RequestParam("age") int age,
            Model model) {

        Member member = new Member(username, age);

        memberRepository.save(member);

        model.addAttribute("member", member);
        return "save-result";
    }

}
@PostMapping("/save")
public String save(
		@RequestParam("username") String username,
		@RequestParam("age") int age,
		Model model) {

	Member member = new Member(username, age);

	memberRepository.save(member);

	model.addAttribute("member", member);
	return "save-result";
}

이 코드를 집중적으로 보면

  • @PostMapping 혹은 @GetMapping을 통해서 어떤 경로에 매핑되는 함수인지 알려준다.
  • 파라미터로 @RequestParam을 통해서 인자를 받아준다.
  • Model model을 생성해서 저장할 객체를 만든다.
  • model.addAttribute("member", member);를 통해서 값을 넣어준다.
  • 반환값으로 jsp 이름(String)을 알려준다.
profile
사람들을 돕는 문제 해결사, 개발자 sudong입니다. 반갑습니다. tkddlsqkr21@gmail.com

0개의 댓글