까먹지 말자! 자주 보자!
서블릿(Servlet), 서블릿 컨테이너, jsp 본문
서블릿(Servlet)
-서버에서 실행되는 프로그램으로, 요청에 따라 서버에서 서블릿을 실행하고 결과를 클라이언트에 전송하는 방식으로 동작됨
-웹에서 사용가능한 자바 프로그램을 구현하기 위한 방법으로, 자바 기반의 확장 CGI 애플리케이션을 구현하기 위해 사용
서블릿 실행 절차
1. 클라이언트로부터의 요청
2. 서블릿 컨테이너에서 해당 서블릿 객체 검색(있다면 진행 없다면 생성)
3. 해당 서블릿을 처리하기 위해 DB 작업 필요하면 DB연결, 처리
4. 서블릿의 응답 전송
특징
-자바 언어를 이용해서 서블릿 구현
-서블릿을 통해 동적 웹 애플리케이션 구현
-프로세스 기반의 CGI가 아닌 스레드의 형태로 동작
단점
-화면에 표현될 HTML코드를 프로그램적으로 작성해야함
-서비스하기 전에 반드시 컴파일 해야함
---------------------------------------------------------------------------------------------------------------------------------------------------------
서블릿컨테이너
-서블릿을 실행하기 위해 담아두는 그릇
-서블릿 객체를 만들어 보관
-서블릿을 관리하고 서비스
-웹서버 역할
-자체적으로 웹 서버 기능이 있음.
-서블릿을 담고 있다가 클라이언트의 요청에 따라 서비스하는 역할
---------------------------------------------------------------------------------------------------------------------------------------------------------
JSP(Java Server Page)
-서블릿 기반 위에 보다 편리하게 웹 프로그래밍을 할 수 있도록 만든 동적 웹 페이지 작성 언어
-웹 + 자바 + 스크립트
-JSP로 가능한 것은 서블릿으로도 가능
-서블릿 대신 JSP 사용 이유
1. 컴파일 하기 싫어서
2. 필요한 부분만 프로그램을 작성하기 위해서
3. 결과적으로 프로그래머의 편의성을 위해
JSP의 요청과 처리과정
1. 클라이언트의 요청 도착
2. 서블릿 컨테이너에 해당 서블릿 객체가 존재하는지 검사
3. 서블릿 객체가 없다면 JSP코드를 서블릿 코드로 변환하고 컴파일 과정을 거친 후 서블릿 객체를 생성
4. 클라이언트의 요청에 따른 작업을 처리하고 클라이언트로 결과 전송
JSP의 컴파일과 실행과정
1. 클라이언트의 요청 도착
2. JSP컨테이너 프로세스를 거치면서 서블릿 객체의존재 유무와 변경여부 검사
3. 서블릿 객체가 존재하지 않으면 JSP파일을 서블릿 코드로 변환하고 컴파일 하여 서블릿 컨테이너에 적재
4. SJP파일이 변경되었다면 JSP파일을 서블릿 코드로 변환하고 컴파일 하여 서블릿 컨테이너에 적재
5. 서블릿 객체가 서블릿 컨테이너에 로딩되어있고, JSP코드가 변경되지 않았다면 서블릿 컨테이너에 적재되어있는 서블릿 객체를 이용해서 서비스 수행(컴파일안해도 됨)
'JSP' 카테고리의 다른 글
request와 response의 동작과정 (0) | 2016.05.18 |
---|---|
doGet Servlet과 doPost Servlet (get방식, post방식) (0) | 2016.05.18 |
서블릿(Servler) 동작원리 (0) | 2016.05.18 |
웹의 원리 (0) | 2016.05.17 |
빈즈란 ? & 이클립스에서 자바 빈즈(Bean) import하기 (0) | 2016.05.17 |