728x90
반응형

오늘은 자바개발자 되기 위해 필히 배워야 할 JSP와 서블릿(servlet) 에 대해 알아보겠습니다.

자바로 웹 어플리케이션을 프로그래밍하기 위해서는 JSP와 서블릿을 사용합니다.

*웹 애플리케이션 (게시판, 메일, 사이트, 블로그, 포럼, 기타 모든 웹 프로그래밍으로 만들어진 프로그램)

오늘은 이 JSP와 서블릿(servlet)이 무엇이고 어떻게 동작하는지 알아보고

이어서 JSP와 서블릿(servlet)를 포함한 자바개발자 교육과정을 무료로 배울수 있는 국비교육 과정을 알려드록 하겠습니다.

2013, 2014년도 졸업예정자도 지원 가능한 실업자 내일배움카도로 진행되는 자바개발자 국비지원 교육과정이니 ,

미래 자바개발자 혹인 자바 웹 프로그래밍 개발자가 되고 싶으신 분은 이 기회를 놓치지 마시기 바랍니다. 

JSP와 서블릿(servlet)이란?

진행 과정을 보면서 살펴 보겠습니다.

1. 사용자(클라이언트)는 웹브라우저를 통해 웹서버에 JSP 페이지를 요청합니다.

 


사용자로부터 요청을 받은 웹서버는 요청에 포한된 URL (http://local***ckdJSP.jsp?**** ) 속의 .jsp 확장자를 발견하고

이것이 JSP 페이지인것 확인합니다. 그다음 JSP를 웹 켄테이너로 전송하게 됩니다.

웹 컨테이너는 JSP 컨테이너 혹은 서블릿 엔진이라고도 하면 톰켓, 웹로직, Resin 등이 이에 해당합니다.

웹컨테이너는 아래 그림처럼 웹 서버안에 존재하며, 서블리 클래스와 JSP를 실행하긴 위한 환경을 제공합니다.

 

2. 웹 컨테이너 동작

 

 


1) 전송받은 JSP 페이지는 한개의 자바파일로 변환된 후 다시 하나의 서블릿 원시코드로 변환되어 컴파일 됩니다.

(jsp는 html 태그 사이에 java 코드 포함, servlet 은 자바코드 내에 html 테그 포함)

2) 이 컴파일 된 서블릿 파일은 인스턴스를 생성하여 메모리에 적제시킵니다.
이로 인해 JSP를 처음 실행할 경우는 시간 지연이 발생하나 컴파일 후 에는 메모리에 적제되어 이후 요청에 대해서는 시간 지연이 없음

3) 서블릿은 jspinit() 메소드로 호출되어 초기화가 일어나며 이후 _jspservice() 메소드을 호출하여 요청을 처리하여 그 결과를 웹서버에 전달

(요청시마다 _jspservice() 메소드를 수행하여 새로운 스레드 생성)

3. 웹서버는 웹 컨테이너에 의해 처리된 결과를 HTML 형태로 유저에게 전송

 

정리하면,

 

서블릿은 웹서버에서 사용하는 자바 프로그램으로 클라이언트의 요청이 컨테이너로 전달되면 주어진 로직을 수행하고 결과를 html 구조로 생성하여 클라이언트에 다시 보내는 역할을 합니다. 서블릿은 JDBC 를 이용해 데이터베이스에 접근하고 별도로 제작된 자바 클래스를 통해 여러 기능을 구현할 수 있습니다.

 

이 서블릿을 쉽게 만들게 하기 위해 개발된 것이 JSP로 처음 호출시 자바파일로 변환 후 다시 서블릿 원시코드로 변환되어 컴파일되어 서블릿으로 저장됩니다. JSP는 Oracle 에 접속해서 데이터를 입력, 수정, 삭제 하고 서버용 프로그램 연동을 통해 사용자 접속 제한 등을 기능을 수행합니다

 

 

728x90
반응형
블로그 이미지

nineDeveloper

안녕하세요 현직 개발자 입니다 ~ 빠르게 변화하는 세상에 뒤쳐지지 않도록 우리모두 열심히 공부합시다 ~! 개발공부는 넘나 재미있는 것~!

,