머리속에 있던 Spring MVC를 그림으로 나타냈다.
⑥ View의 경우 View Resolver와 합쳐서 설명하는 곳도 있다.
web.xml은 파일 이름 그대로 스프링에서 제공하는 기능을 사용하여 request가 들어왔을때 어떻게 처리해 줘야 할 지 설정을 할 수있다. 위에 그림에서는 ① 상황.
이제 하나씩 살펴보자.
(구성의 경우 내가 보거나 사용했던 태그들 위주로 구성하였기 때문에 없는 내용이 있을수 있다)
● <?xml version="1.0" encoding="UTF-8"?>
xml 파일이라고 선언하는 부분. encoding은 UTF-8로 설정되어 있다.
● <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee https://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<web-app> 태그는 web.xml파일의 루트 요소로, 웹 애플리케이션에 관련된 정보와 설정을 포함한다.
version은 웹 애플리케이션의 Java EE 버전을 나타내며, xmlns와 같은 다양한 속성은 XML 네임스페이스와 스키마 위치를 정의하는데 사용.
이 태그 내에 <servelt>, <filter>, <listener> 등을 정의하고 애플리케이션 레벨에 초기화 파라미터를 설정
● <web-app>태그에 쓰이는 태그들 종류
ㆍ <servlet>
서블릿을 정의하는 태그.
ㆍ <servlet-name>
서블릿의 이름을 지정한다.
ㆍ <servlet-class>
서블릿의 클래스명을 지정한다.
ㆍ <servlet-mapping>
서블릿과 URL 패턴을 연결하는 태그이다.
ㆍ <servlet-name>
<servlet>에서 정의한 서블릿의 이름과 매칭된다.
ㆍ <url-pattern>
URL 패턴을 지정하여 해당 패턴과 일치하는 URL에 서블릿을 연결한다.
filter는 request가 DispatcherServlet으로 넘어오기 전에 처리 되는 기능.
(단어 그대로 필터 역할이다. 나중에 따로 정리)
ㆍ <filter>
필터를 정의하는 태그이다.
ㆍ <filter-name>
필터의 이름을 지정한다.
ㆍ <filter-class>
필터의 클래스명을 지정한다.
ㆍ <filter-mapping>
필터와 URL 패턴을 연결하는 태그이다.
ㆍ <filter-name>
<filter>에서 정의한 필터의 이름과 매칭된다.
ㆍ <url-pattern>
URL 패턴을 지정하여 해당 패턴과 일치하는 URL에 필터를 연결한다.
리스너(listener)는 웹 애플리케이션에서 발생하는 이벤트 응답하기 위한 Java 클래스이다.
(자바스크립트의 리스너와 비슷하다)
org.springframework.web.context.ContextLoaderListener 클래스는 웹 애플리케이션 컨텍스트를 초기화하는데 사용되는 ServletContextLisnter 구현체로 보통 시작할 때 Spring ApplicationContext를 설정하고 관리한다.
ㆍ <listener>
리스너를 정의하는 태그이다.
ㆍ <listener-class>
리스너의 클래스명을 지정한다.
<context-param>은 Java 웹 애플리케이션에서 사용되는 초기화 매개변수를 정의하는 데 사용된다. 내가 커스텀한 구성 설정이나 환경 변수와 관련된 정보를 밑에 처럼 구성할 수 있다.
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/context-dataSource.xml</param-value>
</context-param>
ㆍ <context-param>
웹 애플리케이션의 초기화 파라미터를 설정하는 태그이다. (중복설정 가능)
ㆍ <param-name>
파라미터의 이름을 지정한다.
ㆍ <param-value>
파라미터의 값을 지정한다.
밑에 태그는 '어떤 오류가 발생하였을 때 이런 페이지를 보여줘' 라고 밑에 태그처럼 설정이 가능하다.
ㆍ <error-page>
오류 페이지를 정의하는 태그이다.
ㆍ <error-code>
오류 코드를 지정한다.
ㆍ<exception-type>
예외 유형을 지정한다.
ㆍ <location>
오류가 발생했을 때 보여줄 페이지의 위치를 지정한다.
'11. Spring' 카테고리의 다른 글
[Spring] Redis 연동해보기 (0) | 2024.02.05 |
---|---|
[Spring]@RequestBody, @ResponseBody (0) | 2023.12.12 |
[Spring]Spring MVC (0) | 2023.12.01 |
[Maven]pom.xml (0) | 2023.11.30 |
Spring 카테고리 (0) | 2023.11.27 |