728x90
스프링 부트 개념과 활용
3. 스프링 부트 원리
포스팅 참조 정보
GitHub
공부한 내용은 GitHub에 공부용 Organizations에 정리 하고 있습니다
해당 포스팅에 대한 내용의 GitHub 주소
실습 내용이나 자세한 소스코드는 GitHub에 있습니다
포스팅 내용은 간략하게 추린 핵심 내용만 포스팅되어 있습니다
https://github.com/freespringlecture/springboot-concept-uses/tree/chap03-05-embeddedserver
해당 포스팅 참고 인프런 강의
https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81%EB%B6%80%ED%8A%B8/dashboard
실습 환경
- Java Version: Java 11
- SpringBoot Version: 2.1.2.RELEASE
5. 내장 웹 서버 이해
- SpringBoot는 웹 서버가 아니다
- SpringBoots는 Spring을 쉽게 사용하기 위한 도구
- embed tomcat으로 내부에서 톰캣을 사용할 수 있게 설정해놓은 것이다
- Java 코드로 톰캣을 만들 수 있음
public class Application {
public static void main(String[] args) throws LifecycleException {
Tomcat tomcat = new Tomcat();
Context context = tomcat.addContext("/","/");
HttpServlet servlet = new HttpServlet() {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
PrintWriter writer = resp.getWriter();
writer.println("<html><head><title>");
writer.println("Hey, Tomcat");
writer.println("</title></head>");
writer.println("<body><h1>Hello Tomcat</h1></body>");
writer.println("</html>");
}
};
String servletName = "helloServlet";
tomcat.addServlet("/", servletName, servlet);
context.addServletMappingDecoded("/hello", servletName);
tomcat.start();
tomcat.getServer().await();
}
}
ServletWebServerFactoryAutoConfiguration
Servlet 컨테이너를 만듬(서블릿 웹 서버 생성)
TomcatServletWebServerFactoryCustomizer (서버 커스터마이징)
DispatcherServletAutoConfiguration
DispatcherServlet을 만들고 Servlet컨테이너에 등록
728x90
'개발강의정리 > Spring' 카테고리의 다른 글
[스프링 부트 개념과 활용] 3-7. 내장 웹 서버 응용 2부: HTTPS와 HTTP2 (0) | 2019.10.19 |
---|---|
[스프링 부트 개념과 활용] 3-6. 내장 웹 서버 응용 1부: 컨테이너와 포트 (0) | 2019.10.18 |
[스프링 부트 개념과 활용] 3-4. 자동 설정 만들기 (0) | 2019.10.16 |
[스프링 부트 개념과 활용] 3-3. 자동 설정 이해 (0) | 2019.10.15 |
[스프링 부트 개념과 활용] 3-2. 의존성 관리 응용 (0) | 2019.10.14 |
댓글