티스토리 뷰
다음 Spring 프로젝트를 보면 servlet-context.xml과 root-context.xml을 볼 수 있습니다.
servlet-context.xml
servlet-context.xml은 위에 캡쳐화면과 같이
<!-- DispatcherServlet Context: defines this servlet's request-processing infrastructure -->
다음 주석과 같이 Dispather Servlet의 request-processing에 관한 내용이 선언이 되었습니다.
즉, 쉽게 이야기 해서 요청과 관련된 객체들을 정의합니다.
url 관련 Controller, @(어노테이션), view resolvers, handlerMapping, Intercepter, MultipartResolver 등등.
root-context.xml
root-context.xml은 위에 캡쳐화면과 같이
<!-- Root Context: defines shared resources visible to all other web components -->
다음 주석과 같이 다른 웹 컴포넌트들과 공요하는 자원들을 선언하는 용도로 사용됩니다.
해당 Service, Repository(DAO), DB 등 비즈니스 로직과 관련된 설정을 해줍니다.
servlet-context와 root-context의 사이클을 보면 다음과 같습니다.
servlet-context는 root-context의 bean을 참조할 수 있지만, 반대의 경우는 불가능합니다.
web.xml
설정을 위한 설정 파일이빈다.
즉, 최초로 WAS가 최초로 구동될 때, 각종 설정을 정의해줍니다.
여러 xml파일을 인식하도록 각 파일들을 가리켜 줍니다.
Deployment Descriptot(환경파일)로서 XML형식의 파일입니다.
작성되는 내용
- ServletContext의 초기 파라미터
<servlet>
<servlet-name>appServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
</init-param>
<load=on-startup>1<load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>appServlet</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
그 외
- Session의 유효시간 설정
- Servlet/JSP에 대한 매핑
- Mime Type 매핑
- Welcome File list
- Error Pages 처리
- 리스너/필터 설정
- 보안
reference
'프로그래밍언어 > 자바. 스프링' 카테고리의 다른 글
[자바] Tomcat 구조 및 server.xml과 context.xml의 차이 (0) | 2021.01.27 |
---|---|
[Spring] ORM, JPA, Hibernate (0) | 2020.09.11 |
[Java] Web서버와 Was서버의 차이. (0) | 2020.06.04 |
[Spring] 추상클래스와 interface (0) | 2020.05.22 |
[Spring] Interceptor (0) | 2020.05.21 |