2013년 10월 27일 일요일

Spring바로알기(2)

1.DispatcherServlet 
   - 웹브라우저로부터 송신된 Request를 일괄적으로 관리한다.
2.HandlerMapping
  - RequestURL과 Controller 클래스의 맵핑을 관리한다.(즉, DispatcherServlet에서 바로 Controller로 보내는게 아니라 handlerMapping을통해 Requesturl을 구분해서 Controller로 전달한다.)
관련 클래스
 클래스 설명
 org.springframework.web.servlet.handler.
BeanNameUrlHandlerMapping
RequestURL과 스프링 설정 파일에 정의된 Request 컨트롤러의 name 속성을 연관 지음으로써 Request 컨트롤러를 해결한다. 스프링 설정 파일 내에 HandlerMapping 인터페이스의 정의가 존재하지 않는 경우 디폴트값이 인스턴스가 된다 . 
 org.springframework.web.servlet.handler.
SimpleUrlHandlerMapping
RequestURL과 Request 컨트롤러를 정의한다. Bean 정의 파일 내에서의 Request 컨트롤러의 분산을 방지한다. 
 org.springframework.web.servlet.handler.
metadate.CommonsPathMapHandlerMapping
Request 컨트롤러에 메타 데이터를 정의함으로써 RequestURL과의 관련을 정의. Apache Jakarta commons attribute 라이브러리가 필요하다. 

3.Controller
  -비즈니스 로직을 호출하여 처리 결과 ModelAndView 인스턴스를 반환한다.
 클래스설명 
 org.springframework.web.servlet.mvc.
AbstractController
 . GET,POST를 허가하는 Request() 메소드
 . 세션의 체크등을 스프링 설정 파일에서 설정할수 있는 범용적인 클래스 
 org.springframework.web.servlet.mvc.
SimpleFormController
웹 브라우저로부터 송신된 입력 폼을 처리하는 확장된 클래스 
 org.springframework.web.servlet.mvc.
multiaction.MultiActionController
복수 RequestURL에 대해 개별 처리를 구현하는 확장된 클래스 

4.ViewResolver
   -Controller 클래스로부터 반환된 View 정보가 논리적인 View이름일 경우에는 bean설정 파일에 정의되어 있는 ViewResolver 클래스를 이용하여 클라이언트에게 출력할 View 객체를 얻게된다.

 클래스설명 
 org.springframework.web.servlet.view.
internal.ResourceViewResolver
.web-inf 디렉터리안에 있는 ViewResource를 해결한다.
.스프링 설정 파일 안에 ViewResolver인터페이스 정의가 존재하지 않는 경우 디폴트 인스턴스이다. 
 org.springframework.web.servlet.view.
ResourceBundleVuewResolver
.프로퍼티 파일 상에서 View 명과 그 실체가 되는 View를 관련짓는다.
. 프로퍼티파일은 클래스 패스 상에 배치한다.
 org.springframework.web.servlet.view.
velocity.VelocityViewResolver
 Velocity템플릿에서 작성된 view를 해결한다.

5.View
  -프레젠테이션층으로의 출력 데이터를 설정
 클래스설명 
 org.springframework.web.servlet.view.
InternalResourceView
JSP등의 리소스 전용의View.Request속성에
모델을 세트하여 requestDispatcher 클래스를 참조한다음, 해당 View로 forward한다. 
 org.springframework.web.servlet.view.
view.JstlView
.JSTL을 사용한 페이지 전용의 view.InternalResourceView클래스의 서브 클래스
.스프링의 메시지 소스파일을 JSTL의 포맷태그로부터 참조할수 있다. 
 org.springframework.web.servlet.view.
velocity.VelocityView
벨로시티 템플릿 전용의 View 




댓글 없음:

댓글 쓰기