Spring

Spring Model, Model 객체

Vagins 2021. 8. 11. 12:40

21.08.11

학교 개강 준비 때문에 며칠간 글을 못 썼습니다. 

오늘은 model 객체에 대해 정리해보겠습니다.

 

 

1. Spring Model 객체란

 

스프링에서 controller의 메서드는 보통 model이라는 타입의 객체를 파라미터로 받을 수 있습니다.

순수하게 jsp servlet으로 웹 어플리케이션을 만들 때 보통 request나 session 객체에 정보를 담아 view단에 넘겨줍니다만 spring에선 이런 작업을 할때 model 객체를 쓸 뿐입니다.

jsp, servlet으로 웹을 만들 땐, request.setAttribute니 dispatcher니 forward니 이것 저것 많이 붙여줘야 됐었습니다.

그러나 spring으로 만들땐 model.addAttribute("이름", 값); 으로 매우 짧고 편리하게 바뀐겁니다. 

 

 

2. Model 객체의 특징

 

편리한 점은 개발자가 직접 model 객체를 생성할 필요가 없다는 것입니다. 파라미터로 선언만 해주면 스프링이 알아서 만들어줍니다. ex) public void home(Model mode) {  ~~  }

순서를 정리하자면

1) 파라미터에 model 객체를 선언

2) 함수 내부에서 addAttribute()를 통해 전달

정도 되겠습니다.

이 기능만 잘 알고 있어도 view 단으로 많은 데이터를 보낼수 있습니다.

 

 

 

 

진행중인 공모전에서도 모두 model객체를 통해 데이터를 view단에 전달하고 있습니다.

제가 예제로 접해본 spring 프로젝트들이 model 객체로 밖에 전달하고 있지 않아서 다른 방법이 있는지는 더 찾아봐야겠습니다.

mapper와 dao, service, controller 이렇게 4개의 유기적인 연결관계가 이해가 가기 시작합니다.

응용력은 많이 떨어지지만 이제 해봤던 것들은 spring 디자인 패턴에 맞춰 구현할 수 있습니다.

'Spring' 카테고리의 다른 글

spring 프로젝트 진행 중 오류 1  (0) 2021.08.16
Spring EL, 내장객체, 표현법  (0) 2021.08.13
session, Session의 동작 순서, Session 사용 코드  (0) 2021.08.07
Tiles, dependency  (0) 2021.08.07
spring mybatis, mapper  (0) 2021.08.05