반응형
❤ 김춘장이의 위키백과 - 나만의 공부 기록 Tistory ❤
본 포스팅은김영한
선생님의스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB접근 기술
강의를 기반으로 작성되었습니다.
웹 개발 방법
- 정적 컨텐츠
서버에서 하는 것 없이 파이릉ㄹ 그냥 웹브라우저에 내려주는 방법 - MVC와 템플릿 엔진
서버에서 프로그래밍 하여 html을 동적으로 바꿔서 내리는 것
컨트롤러, 모델, 뷰 MVC 패턴이라고하며 주로 많이 사용함 - API
JSON방식으로 웹 브라우저에 내려주는 것,리엑트나 등등
서버끼리 통신할때 사용하기도 함
정적컨텐츠
DOSC 정의
1.1.5. 정적 콘텐츠
기본적으로 Spring Boot는 클래스 경로의
/static(또는 /public 또는 /resources 또는 /META-INF/resources)이라는 디렉토리
또는 ServletContext의 루트에서 정적 콘텐츠를 제공합니다.
Spring MVC의 ResourceHttpRequestHandler를 사용하므로
자체 WebMvcConfigurer를 추가하고 addResourceHandlers 메서드를 재정의하여
해당 동작을 수정할 수 있습니다.
독립형 웹 애플리케이션에서는 컨테이너의 기본 서블릿이 활성화되지 않습니다.
서버 서버렛 등록 디폴트 서블릿 속성을 사용하여 활성화할 수 있습니다.
기본 서블릿은 Spring이 처리하지 않기로 결정한 경우
ServletContext의 루트에서 콘텐츠를 제공하는 폴백 역할을 합니다.
Spring은 항상 DispatcherServlet을 통해 요청을 처리할 수 있기 때문에
대부분의 경우 기본 MVC 구성을 수정하지 않는 한 이런 일이 발생하지 않습니다.
기본적으로 리소스는 /**에 매핑되지만 spring.mvc.static-path-pattern
속성을 사용하여 이를 조정할 수 있습니다.
예를 들어, 모든 리소스를 /resources/**로 재배치하려면 다음과 같이 하면 됩니다:
PropertiesYaml
spring.mvc.static-path-pattern=/resources/**
spring.web.resources.static-locations 속성을 사용하여
정적 리소스 위치를 사용자 지정할 수도 있습니다(기본값을 디렉토리 위치 목록으로 대체).
루트 서블릿 컨텍스트 경로인 "/"도 자동으로 위치로 추가됩니다.
앞서 언급한 "표준" 정적 리소스 위치 외에도 Webjar 콘텐츠에는 특별한 경우가 있습니다.
기본적으로 경로가 /webjars/**인 모든 리소스는 Webjars 형식으로 패키징된 경우 jar 파일에서 제공됩니다.
경로는 spring.mvc.webjars-path-pattern 속성을 사용하여 사용자 지정할 수 있습니다.
애플리케이션이 jar로 패키징된 경우 src/main/webapp 디렉터리를 사용하지 마세요.
이 디렉토리는 일반적인 표준이지만 워 패키징에서만 작동하며,
jar를 생성하는 경우 대부분의 빌드 도구에서 자동으로 무시됩니다.
정적컨텐츠는 html파일 그대로 통으로 전달한다
웹 브라우저에서 http://localhost:8080/html파일명
입력 하게 되면
스프링에 먼저 진입을 한다
스프링 컨테이너 안에 정적컨텐츠의 컨트롤러는 따로 없다
그럼 내장 톰캣 서버에서 리소시스 디렉터리 안에 있는 동일명의 Html을 찾아
브라우저에게 반환시킨다
구동과정
반응형
'🌱 𝐅𝐫𝐚𝐦𝐞𝐰𝐨𝐫𝐤 > ⠀⠀⠀⠀ SᴛʀɪɴɢBᴏᴏᴛ' 카테고리의 다른 글
Spring Boot - Spring의 API (0) | 2023.12.27 |
---|---|
Spring Boot - MVC와 템플릿 엔진 (0) | 2023.12.27 |
Spring Boot - 빌드와 실행, 그리고 AOP (1) | 2023.12.27 |
Spring Boot - 라이브러리 구경 (0) | 2023.08.22 |
Spring Boot - 프로젝트 환경 (0) | 2023.08.22 |