티스토리 뷰

반응형

 서블릿은 자바플랫폼에서 컨포넌트를 기반으로 한 웹 애플리케이션을 개발할때 사용하는 핵심 기술이다.

JSP가 등장한 가장 큰 이유는 서블릿이 가진 HTML 표현상의 문제를 해결하기 위해서였다.

서블릿 프로그램 내에서 HTML을 처리하기 때문에 간단한 태그를 변경할 때 조차 재컴파일을 해야하는 문제가 있다.

이러한 이유로 웹 디자이너는 마음대로 화면을 수정할 수 없다는 문제점을 따르게 된다. 이 처럼 비즈니스로직과 컨텐츠가 소스에 있다는 점은 개발과 관리면에서 여러가지 문제점을 안겨주었다.


서블릿의 장점


 - 쓰레드를 기반으로 하므로 웹 애플리케이션 운영에 효율적이다.

 - 자바를 기반으로 하므로 자바 API를 모두 사용 할 수 있다.

 - 운영체제나 하드웨어 영향을 받지 않음으로, 한번 개발된 애플리케이션은 다양한 서버 환경에서도 실행 가능하다.

 - 웹 애플리케이션에서 효율적인 자료 공유 방법을 제공한다.


웹 애플리케이션 개발시 서블릿을 사용하면 좋은 점


​ - 컨텐츠와 비즈니스 로직을 분리 할 수 있다.

 - 컨트롤러와 뷰 역할 분담으로 인해 웹디자이너와 개발자간의 원활한 작업이 가능하다.

 - 유지보수가 수월하다.

 - 기능확장이 용이하다.

 - 현재와 같이 프로그래머가 HTML, 자바스크립트, 스타일 시트와 같은 복잡한 기술을 모두 알아야 할 필요는 없다.

 - jsp 페이지내에 HTML, CSS, 자바스크립트 소스코드가 뒤섞이는 스파게티 소스를 막을 수 있다.


서블릿 컨테이너


​ 서블릿 구조에서 가장 큰 특징은 서블릿 컨테이너다. 웹 서버는 서블릿 자체를 실행하지 못하므로 자바 가상머신을 내장한 컨테이너 (이전 서블릿 엔진이라고 표현)라는 서블릿 실행환경이 필요하다.


서블릿 구조





 - 웹서버는 클라이언트 요청을 컨테이너로 전달한다. 컨테이너는 서블릿 메모리에 있는지 확인하고 없을 경우 클라이언트 요청을

   처리할 쓰레드를 생성해서 처리한다.

 - 서블릿은 JDBC를 이용해 데이터베이스에 접근할 수 있고, 별도로 제작된 자바클래스를 통해, 다양한 기능을 구현할 수 있다.

 - 서블릿에서 수행된 결과는 HTML 형식으로 클라이언트에 전달된다.

 - javax.servlet.http.HttpServlet을 상속받는 서블릿 동작구조.






서블릿 생명주기



 

반응형

'Web Development > 기초' 카테고리의 다른 글

JSP Model1 과 Model 2 차이  (0) 2016.04.18
쿠키와 세션  (0) 2016.04.18
Java Servlet에 관하여  (0) 2016.04.18
서블릿과 JSP  (0) 2016.04.18
웹 프로그래밍 기초  (0) 2016.04.18