public String test(Model model) 에서 model은 왜 리턴타입이 아닌 파라미터로 있는걸까요

Spring Boot에서 Model 객체가 메서드 인자로 들어가는 이유는 컨트롤러에서 데이터를 뷰에 전달하기 위한 통로를 제공하기 위해서다.

Spring은 컨트롤러 메서드가 호출될 때 자동으로 Model 객체를 생성해 메서드에 주입한다.

이를 통해 메서드 내부에 쉽게 데이터를 추가하고, 리턴할 때 뷰로 데이터를 전달할 수 있다.

Model 객체가 인자로 들어가는 이유 정리

1. 자동 주입: Spring이 자동으로 Model 객체를 메서드에 주입하기 때문에, 개발자가 Model 객체를 생성하지 않고 바로 사용 가능
   
2. 데이터 저장 용도 : 메서드 내부에서 model.addAttribute()를 통해 데이터를 추가하고, 이 데이터는 뷰에서 사용할 수 있음.

3. 리턴과 함께 전달 : 메서드가 종료될 때 Model에 추가된 데이터는 자동으로 뷰에 전달됨.

===> Model을 사용하지 않을 시 : 데이터 전달을 위한 객체를 따로 리턴해야 됨 (귀찮)

===>Model을 인자로 사용하는 이유 : 간단한 데이터 전달 (굿)