✎NHN Academy | JAVA

NHN Academy - 2024.11.11(Mon)

박순돌 2024. 11. 11. 17:05
package com.nhnacademy.springbootmvc.controller;

import com.nhnacademy.springbootmvc.domain.User;
import com.nhnacademy.springbootmvc.repository.UserRepository;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.servlet.ModelAndView;

import java.util.List;

@Controller
public class UserController {
    private final UserRepository userRepository;

    public UserController(UserRepository userRepository) {
        this.userRepository = userRepository;
    }

    @GetMapping("/user")
    public ModelAndView getUsers(/* TODO 1: 적절한 모델 type 넣기 */) {
        List<User> users = userRepository.getUsers();
        //TODO 2: user 목록을 모델의 attribute 추가

        ModelAndView modelAndView = new ModelAndView("users");
        modelAndView.addObject("users", users);
        
        return modelAndView;
    }
}

 

Model ModelMap ModelAndView
  • 컨트롤러에서 뷰로 데이터를 전달하는 가장 기본적인 방법
  • 맵과 유사한 API를 제공하여 데이터를 좀 더 유연하게 관리 O
  • 뷰 이름과 데이터를 함께 전달해야 할 때 효과적
  • ModelAndView 객체를 생성하여 뷰 이름과 데이터를 설정한 후 반환하면, 스프링 MVC가 이를 이용해 뷰를 렌더링

 


 

'✎NHN Academy | JAVA' 카테고리의 다른 글

NHN Academy - 2024.11.13(Wed)  (0) 2024.11.13
NHN Academy - 2024.11.12(Tue)  (0) 2024.11.12
NHN Academy - 2024.11.06(Wed)  (5) 2024.11.06
NHN Academy - 2024.11.05(Tue)  (0) 2024.11.05
NHN Academy - 2024.11.04(Mon)  (3) 2024.11.04