Model 인터페이스
model.addAttibute(key, value)
- Spring이 제공하는 Model 인터페이스를 이용하므로 Spring에 종속적임
- View의 렌더링이 끝나기 전까지 데이터가 유효하므로 렌더링이 끝나면 접근이 불가능
- 해당 View 에서만 데이터에 접근이 가능함
HttpServletRequest 클래스
request.setAttribute(key, value)
- Java Servlet API가 제공하는 클래스를 이용하므로 Spring에 종속적이지 않음
- HttpServletRequest 인스턴스가 소멸되기 전까지 데이터가 유효함
- 해당 View 뿐만 아니라 더 넓은 범위로 사용이 가능함
(include한 view 페이지에서도 사용 가능)
결론
Model을 사용하는 것이 더 가볍고 편리하다고하나 사용하는 측면에서 기능적으로 큰 차이점은 없다고 함.