SlideShare a Scribd company logo
서블릿 Servlet
이정훈
https://github.com/sjh836
1. 서블릿이란?
• HTTP protocol 서비스를 지원하는 javax.servlet.http.HttpServlet
클래스를 상속하여 개발하며, Servlet은 Container에 의해서 실
행되고, 관리된다.
• HTML 변경시 Servlet을 재컴파일 해야 하는 단점이 있다.
• 서블릿은 외부 요청마다 프로세스보다 가벼운 스레드로써 응답
2. JSP와 서블릿의 차이점
①JSP: HTML 문서 안에 Java 코
드를 포함하고 있다. MVC에서
View역할
②서블릿: 자바 코드 안에
HTML을 포함하고 있다. MVC
에서 Controller역할
3. 서블릿 컨테이너(Tomcat)란?
• HTTP 요청을 받아서 Servlet을 실행하고 생명주기를 관리하는
역할을 한다.
• Servlet과 웹 서버(Apache, nginx..)가 서버 통신 할 수 있는 방법
을 제공
• 멀티 스레딩을 지원하여 클라이언트의 다중 요청을 알아서 처
리
4. 서블릿 동작과정
① 사용자가 URL을 클릭하면 HTTP Request를 Servlet
Container에 보낸다.
② Servlet Container는 HttpServletRequest,
HttpServletResponse 두 객체를 생성한다.
③ 사용자가 요청한 URL을 분석하여 어느 서블릿에
대한 요청인지 찾는다. (DD를 참조하여 분석)
④ 만일 그 클래스가 웹 컨테이너에서 한 번도 실행된
적이 없거나 현재 메모리에 생성된 인스턴스(프로
세스)가 없다면 새로 인스턴스를 생성하고(메모리
에 로드하고) init()메소드를 실행하여 초기화 한 뒤
스레드를 하나 생성한다.
이미 인스턴스가 존재할 경우에는 새로 인스턴스를
생성하지 않고 기존의 인스턴스에 스레드만 하나
새로 생성한다. 각 서블릿 인스턴스는 웹 컨테이너
당 하나만 존재하기 때문에 init() 메소드는 각 서블
릿 당 한 번씩만 호출된다.
⑤ 컨테이너는 서블릿 service() 메소드를 호출하며,
POST, GET여부에 따라 doGet() 또는 doPost()가 호
출된다.
⑥ doGet() 또는 doPost() 메소드는 동적인 페이지를
생성한 후 HttpServletResponse객체에 응답을 보낸
다.
⑦ 응답이 완료되면 HttpServletRequest,
HttpServletResponse 두 객체를 소멸시킨다.
배포서술자(DD) web.xml
• Servlet, Error Page, Listener, Fillter, 보안 설정등 Web
Application의 설정 파일이다.
• URL과 실제 서블릿의 매핑 정보도 담고 있다.
• 하나의 웹 어플리케이션에 하나만 존재한다.
• 보통 Web Document Root 디렉토리에 WEB-INF 폴더 아래
web.xml 파일로 존재한다.
5. 서블릿 .java와 .class 파일 경로

More Related Content

PPTX
Servlet Architecture
JU Chae
 
PPT
Servlet3
Sukjin Yun
 
PDF
자바 서블릿과 세션 (Java Servlet, Session)
Yu Yongwoo
 
PDF
WebSocket 기반 쌍방향 메시징
trustinlee
 
PPTX
Web Socket
ymtech
 
PPTX
Web socket
ymtech
 
PDF
nodejs websocket & SOCKET.IO
Mungyu Choi
 
PDF
Netty 시작하기 (4)
Daehyun Kim
 
Servlet Architecture
JU Chae
 
Servlet3
Sukjin Yun
 
자바 서블릿과 세션 (Java Servlet, Session)
Yu Yongwoo
 
WebSocket 기반 쌍방향 메시징
trustinlee
 
Web Socket
ymtech
 
Web socket
ymtech
 
nodejs websocket & SOCKET.IO
Mungyu Choi
 
Netty 시작하기 (4)
Daehyun Kim
 

What's hot (12)

PPTX
웹소켓 (WebSocket)
jeongseokoh
 
PPTX
7가지 동시성 모델 - 6장. 순차 프로세스 통신
Hyunsoo Jung
 
PDF
Nginx Architecture
건 손
 
PPTX
React
MinJae Kang
 
PDF
웹 서버 실행 환경
성균 전
 
PPTX
실시간통신
Woojing Seok
 
PPTX
웹(자바기준)의 전반적인 이해
JAEHYUN LIM
 
PPTX
1주차 자기개발 항목(jsp 컴파일)
brain816
 
PPTX
[웹기반시스템 3조] mvc
구 봉
 
PPTX
WAS와 웹서버 간단 정리
ChangHyeon Bae
 
PDF
Jsp convert to Servlet
JU Chae
 
PPTX
Spring4 Chapter 2
상호 한
 
웹소켓 (WebSocket)
jeongseokoh
 
7가지 동시성 모델 - 6장. 순차 프로세스 통신
Hyunsoo Jung
 
Nginx Architecture
건 손
 
웹 서버 실행 환경
성균 전
 
실시간통신
Woojing Seok
 
웹(자바기준)의 전반적인 이해
JAEHYUN LIM
 
1주차 자기개발 항목(jsp 컴파일)
brain816
 
[웹기반시스템 3조] mvc
구 봉
 
WAS와 웹서버 간단 정리
ChangHyeon Bae
 
Jsp convert to Servlet
JU Chae
 
Spring4 Chapter 2
상호 한
 
Ad

Viewers also liked (17)

PPTX
Annotation
JungHoon Lee
 
PPT
sungmin slide
sungminlee
 
PDF
아두이노 Digital/Analog IO
JungHoon Lee
 
PDF
아두이노 bluetooth
JungHoon Lee
 
PDF
DISCUS: Distributed Innovation and Scalable Collaboration in Uncertain Settings
Xavier Llorà
 
PDF
Prototype & jQuery
Remy Sharp
 
PPT
Servlet/JSP course chapter 1: Introduction to servlets
JavaEE Trainers
 
PPTX
forensic document examiner using graphology science
Gargee Hiray
 
PPT
Handwriting and Document Examination
Prashant Mehta
 
PDF
jQuery in 15 minutes
Simon Willison
 
PDF
jQuery Proven Performance Tips & Tricks
Addy Osmani
 
PDF
jQuery for beginners
Arulmurugan Rajaraman
 
PDF
Learning jQuery in 30 minutes
Simon Willison
 
PPT
What is language?
Dave Gray
 
PPT
Java Servlets
Nitin Pai
 
PDF
jQuery Essentials
Marc Grabanski
 
PPTX
What is Language
amna-shahid
 
Annotation
JungHoon Lee
 
sungmin slide
sungminlee
 
아두이노 Digital/Analog IO
JungHoon Lee
 
아두이노 bluetooth
JungHoon Lee
 
DISCUS: Distributed Innovation and Scalable Collaboration in Uncertain Settings
Xavier Llorà
 
Prototype & jQuery
Remy Sharp
 
Servlet/JSP course chapter 1: Introduction to servlets
JavaEE Trainers
 
forensic document examiner using graphology science
Gargee Hiray
 
Handwriting and Document Examination
Prashant Mehta
 
jQuery in 15 minutes
Simon Willison
 
jQuery Proven Performance Tips & Tricks
Addy Osmani
 
jQuery for beginners
Arulmurugan Rajaraman
 
Learning jQuery in 30 minutes
Simon Willison
 
What is language?
Dave Gray
 
Java Servlets
Nitin Pai
 
jQuery Essentials
Marc Grabanski
 
What is Language
amna-shahid
 
Ad

Similar to 서블릿(servlet) (20)

PDF
JSP 프로그래밍 #01 웹 프로그래밍
Myungjin Lee
 
PDF
JSP 프로그래밍 #03 서블릿
Myungjin Lee
 
PPTX
Servlet&jsp 1장
JeongBong Kim
 
PPTX
HeadFisrt Servlet&JSP Chapter 1
J B
 
PDF
HeadFisrt Servlet&JSP Chapter 4
J B
 
PDF
HeadFisrt Servlet&JSP Chapter 2
J B
 
PPTX
Presentation1
Tae Gyun Woo
 
PDF
WAS의 동작과 WEB, Servlet, JSP_Wh apm
엑셈
 
PDF
JSP 프로그래밍 #02 서블릿과 JSP 시작하기
Myungjin Lee
 
PDF
#22.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
PDF
HeadFisrt Servlet&JSP Chapter 5
J B
 
PPTX
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기
JunGi Kim
 
PDF
Mvc 패턴
Seokju Hong
 
PPTX
200.마이크로서비스에 적합한 오픈소스 WAS는 무엇?
Opennaru, inc.
 
PDF
[Study]HeadFirst JSP&servlet chapter5
Hyeonseok Yang
 
PDF
Basic.pptx
Won Jin Do
 
PDF
자바 웹 개발 시작하기 (2주차 : 인터넷과 웹 어플리케이션의 이해)
DK Lee
 
PDF
Web server
Lee Geonhee
 
PPT
Tks프로젝트v2
jrlim80
 
PDF
맛만 보자 Undertow
jbugkorea
 
JSP 프로그래밍 #01 웹 프로그래밍
Myungjin Lee
 
JSP 프로그래밍 #03 서블릿
Myungjin Lee
 
Servlet&jsp 1장
JeongBong Kim
 
HeadFisrt Servlet&JSP Chapter 1
J B
 
HeadFisrt Servlet&JSP Chapter 4
J B
 
HeadFisrt Servlet&JSP Chapter 2
J B
 
Presentation1
Tae Gyun Woo
 
WAS의 동작과 WEB, Servlet, JSP_Wh apm
엑셈
 
JSP 프로그래밍 #02 서블릿과 JSP 시작하기
Myungjin Lee
 
#22.스프링프레임워크 & 마이바티스 (Spring Framework, MyBatis)_스프링프레임워크 강좌, 재직자환급교육,실업자국비지원...
탑크리에듀(구로디지털단지역3번출구 2분거리)
 
HeadFisrt Servlet&JSP Chapter 5
J B
 
[KAU UMC 컨퍼런스] Java 기반 Web의 역사 - 김준기
JunGi Kim
 
Mvc 패턴
Seokju Hong
 
200.마이크로서비스에 적합한 오픈소스 WAS는 무엇?
Opennaru, inc.
 
[Study]HeadFirst JSP&servlet chapter5
Hyeonseok Yang
 
Basic.pptx
Won Jin Do
 
자바 웹 개발 시작하기 (2주차 : 인터넷과 웹 어플리케이션의 이해)
DK Lee
 
Web server
Lee Geonhee
 
Tks프로젝트v2
jrlim80
 
맛만 보자 Undertow
jbugkorea
 

More from JungHoon Lee (7)

PPTX
삼육봇 소개
JungHoon Lee
 
PPTX
리스펙토링 6월 세미나, AWS로 개인서버 구축하기
JungHoon Lee
 
PPTX
리스펙토링 5월 세미나, git과 github
JungHoon Lee
 
PPTX
삼육대 개발동아리 리스펙토링 OT
JungHoon Lee
 
PPTX
Syu 오늘 점심은 뭐먹지? 개요
JungHoon Lee
 
PPTX
Syu 동행길 웹개발 개요
JungHoon Lee
 
PDF
와이어샤크 IP패킷의 checksum증명
JungHoon Lee
 
삼육봇 소개
JungHoon Lee
 
리스펙토링 6월 세미나, AWS로 개인서버 구축하기
JungHoon Lee
 
리스펙토링 5월 세미나, git과 github
JungHoon Lee
 
삼육대 개발동아리 리스펙토링 OT
JungHoon Lee
 
Syu 오늘 점심은 뭐먹지? 개요
JungHoon Lee
 
Syu 동행길 웹개발 개요
JungHoon Lee
 
와이어샤크 IP패킷의 checksum증명
JungHoon Lee
 

서블릿(servlet)

  • 2. 1. 서블릿이란? • HTTP protocol 서비스를 지원하는 javax.servlet.http.HttpServlet 클래스를 상속하여 개발하며, Servlet은 Container에 의해서 실 행되고, 관리된다. • HTML 변경시 Servlet을 재컴파일 해야 하는 단점이 있다. • 서블릿은 외부 요청마다 프로세스보다 가벼운 스레드로써 응답
  • 3. 2. JSP와 서블릿의 차이점 ①JSP: HTML 문서 안에 Java 코 드를 포함하고 있다. MVC에서 View역할 ②서블릿: 자바 코드 안에 HTML을 포함하고 있다. MVC 에서 Controller역할
  • 4. 3. 서블릿 컨테이너(Tomcat)란? • HTTP 요청을 받아서 Servlet을 실행하고 생명주기를 관리하는 역할을 한다. • Servlet과 웹 서버(Apache, nginx..)가 서버 통신 할 수 있는 방법 을 제공 • 멀티 스레딩을 지원하여 클라이언트의 다중 요청을 알아서 처 리
  • 5. 4. 서블릿 동작과정 ① 사용자가 URL을 클릭하면 HTTP Request를 Servlet Container에 보낸다. ② Servlet Container는 HttpServletRequest, HttpServletResponse 두 객체를 생성한다. ③ 사용자가 요청한 URL을 분석하여 어느 서블릿에 대한 요청인지 찾는다. (DD를 참조하여 분석) ④ 만일 그 클래스가 웹 컨테이너에서 한 번도 실행된 적이 없거나 현재 메모리에 생성된 인스턴스(프로 세스)가 없다면 새로 인스턴스를 생성하고(메모리 에 로드하고) init()메소드를 실행하여 초기화 한 뒤 스레드를 하나 생성한다. 이미 인스턴스가 존재할 경우에는 새로 인스턴스를 생성하지 않고 기존의 인스턴스에 스레드만 하나 새로 생성한다. 각 서블릿 인스턴스는 웹 컨테이너 당 하나만 존재하기 때문에 init() 메소드는 각 서블 릿 당 한 번씩만 호출된다. ⑤ 컨테이너는 서블릿 service() 메소드를 호출하며, POST, GET여부에 따라 doGet() 또는 doPost()가 호 출된다. ⑥ doGet() 또는 doPost() 메소드는 동적인 페이지를 생성한 후 HttpServletResponse객체에 응답을 보낸 다. ⑦ 응답이 완료되면 HttpServletRequest, HttpServletResponse 두 객체를 소멸시킨다.
  • 6. 배포서술자(DD) web.xml • Servlet, Error Page, Listener, Fillter, 보안 설정등 Web Application의 설정 파일이다. • URL과 실제 서블릿의 매핑 정보도 담고 있다. • 하나의 웹 어플리케이션에 하나만 존재한다. • 보통 Web Document Root 디렉토리에 WEB-INF 폴더 아래 web.xml 파일로 존재한다.
  • 7. 5. 서블릿 .java와 .class 파일 경로