빵구의 개발 메꾸기

전자정부 프레임워크 샘플 코드 분석 (dispatcher-servlet.xml) 본문

BACK-END/SPRING

전자정부 프레임워크 샘플 코드 분석 (dispatcher-servlet.xml)

bkjo94 2022. 4. 28. 10:56

DispatcherServlet 클래스는 클라이언트로부터 요청이 들어오면 가장 먼저 받기 때문에 프론트 컨트롤러라고도 불리고 받은 요청을 세부 컨트롤러로 보낸다.

 

 

 

① DispatcherServlet 설정에 대한 파일이다.

② egovframework 패키지 이하에 있는 java 파일 중 @controller을 사용하는 클래스들을 bean으로 등록시킨다.

③ controller의 메소드를 정상적으로 실행하고 결과 값을 ModelAndView 객체로 변환 후 DispatcherServlet에

    반환한다.

④ controller와 클라이언트가 요청 날린 url을 @RequestMapping 값과 매핑시켜주는 HandlerMapping의 구현

   클래스이다.

 

 

 

① SessionLocaleResolver는 session에 locale 정보를 넣고 session 정보를 바탕으로 다국어를 처리한다.

    LocaleChangeInterceptor는 url뒤에 특정 locale에 대해 파라미터로 넘겼을 시 interceptor로 가로채고 

    locale 설정 값을 바꿔줘서 다국어를 처리한다.

② prop key에 해당하는 exception 별 케이스에 따라 특정 경로의 jsp 화면을 보여줄 수 있다.

    jsp 경로는 ③번에서 잡아준 경로를 베이스로 한다. 

③ view의 prefix와 suffix를 설정한다.

    prefix는 webapp 경로를 기준으로 하고 있으며 p:prefix="~" 여기에 경로를 넣어주게 되면 webapp/~ 로 설정된다.

    suffix를 .jsp로 넣어주게 되면 controller에서 view 경로를 return 할 때 jsp 확장자를 넣어줄 필요가 없다.

EgovImgPaginationRenderer는 페이징처리를 하는 java 파일이고 id가 paginationManager인 bean에서 참조하고

    있다.

⑤ 별도의 controller가 없는 상태에서 URL에 path 속성과 같이 /cmmn/validator.do로 접속 시 view-name의 속성값에

    있는 cmmn/validator jsp 화면을 보여준다.

 

 

 

① 웹 어플리케이션이 실행 될 때 web.xml 파일을 가장 먼저 읽는다.

② dispatcher-servlet.xml 파일을 읽고 DispatcherServlet에 대한 설정을 적용할 수 있게 한다.

Comments