Controller의 ModelMap 매개변수
- 작성자 :
- 최*현
- 작성일 :
- 2024-07-12 14:29:25
- 조회수 :
- 130
- 구분 :
- 개발환경 / 3.8
- 진행상태 :
- 완료
Q
```
@RequestMapping(value="/deptDetail.do")
public String selectDeptDetail(int deptno, ModelMap model) throws Exception {
DeptVO vo = deptService.selectDeptDetail(deptno);
model.addAttribute("deptVO", vo);
return "deptDetail";
}
```
전자정부프레임워크 공부 중인 학생입니다.
현재 MVC 구조 배우면서 데이터베이스 접근 방법에 대해 배우고 있는데 사진 올린 것처럼 Controller파일에서 매핑 메서드에 매개변수를 넣는데
int deptno의 경우엔 jsp 파일에서 ```deptDetail.do?deptno=~~``` 로 제가 전송했지만 ModelMap 같은 경우에는 따로 변수를 넘겨온 부분이 없는데 이게 그냥 객체로 사용이 가능한건가요??? 선언만 하고 따로 생성은 안해도 addAttribute와 같이 메서드를 사용할 수 있는 지 궁금해서 질문드립니다.
@RequestMapping(value="/deptDetail.do")
public String selectDeptDetail(int deptno, ModelMap model) throws Exception {
DeptVO vo = deptService.selectDeptDetail(deptno);
model.addAttribute("deptVO", vo);
return "deptDetail";
}
```
전자정부프레임워크 공부 중인 학생입니다.
현재 MVC 구조 배우면서 데이터베이스 접근 방법에 대해 배우고 있는데 사진 올린 것처럼 Controller파일에서 매핑 메서드에 매개변수를 넣는데
int deptno의 경우엔 jsp 파일에서 ```deptDetail.do?deptno=~~``` 로 제가 전송했지만 ModelMap 같은 경우에는 따로 변수를 넘겨온 부분이 없는데 이게 그냥 객체로 사용이 가능한건가요??? 선언만 하고 따로 생성은 안해도 addAttribute와 같이 메서드를 사용할 수 있는 지 궁금해서 질문드립니다.
환경정보
-
- OS 정보 :
- 표준프레임워크 버전 :
- JDK(JRE) 정보 :
- WAS 정보 :
- DB 정보 :
- 기타 환경 정보 :
A
안녕하세요.
표준프레임워크 센터입니다.
Spring MVC 구조에서의 컨트롤러 메서드와 일반적인 Java 메서드는
메서드 명과 매개변수, 로직 등 구조적으로는 유사성이 있으나
컨트롤러 메서드는 HTTP 요청을 처리하고 반환하는 메서드로
컨트롤러 메서드를 호출하려면 메서드 명을 호출하는 것이 아닌
Request URL을 호출해야 한다는 점이나
매개변수 전달에 있어 단순히 값을 전달하는 것이 아닌
HTTP 요청에서 파라미터, 폼 데이터 등을 자동으로 매핑하는 매개변수 바인딩 방식 등에 있어
내부적으로 분명한 차이점이 존재합니다.
컨트롤러와 뷰 간의 데이터 전달에 사용되는 ModelMap은
Spring 컨트롤러 메서드에서 Request 및 Response에 사용되는 객체로
작성해주신 예제와 같이 컨트롤러 메서드의 매개변수로 선언하게 되면
스프링 프레임워크에서 자동으로 생성하고 관리해주기 때문에
개발자가 직접 생성하지 않아도 메서드 내부에서 바로 사용할 수 있어
개발자는 비즈니스 로직에 집중할 수 있는 장점이 있습니다.
감사합니다.
표준프레임워크 센터입니다.
Spring MVC 구조에서의 컨트롤러 메서드와 일반적인 Java 메서드는
메서드 명과 매개변수, 로직 등 구조적으로는 유사성이 있으나
컨트롤러 메서드는 HTTP 요청을 처리하고 반환하는 메서드로
컨트롤러 메서드를 호출하려면 메서드 명을 호출하는 것이 아닌
Request URL을 호출해야 한다는 점이나
매개변수 전달에 있어 단순히 값을 전달하는 것이 아닌
HTTP 요청에서 파라미터, 폼 데이터 등을 자동으로 매핑하는 매개변수 바인딩 방식 등에 있어
내부적으로 분명한 차이점이 존재합니다.
컨트롤러와 뷰 간의 데이터 전달에 사용되는 ModelMap은
Spring 컨트롤러 메서드에서 Request 및 Response에 사용되는 객체로
작성해주신 예제와 같이 컨트롤러 메서드의 매개변수로 선언하게 되면
스프링 프레임워크에서 자동으로 생성하고 관리해주기 때문에
개발자가 직접 생성하지 않아도 메서드 내부에서 바로 사용할 수 있어
개발자는 비즈니스 로직에 집중할 수 있는 장점이 있습니다.
감사합니다.