servlet
- Server Side Applet의 약어로 Web 서버 즉, Servlet 컨테이너에서 수행되는 JAVA 클래스
- 자바를 사용하여 웹페이질르 동적으로 생성하는 서버측 프로그램.
- 서버의 응용 프로그램을 구현하는 기술로 서버 프로토콜 중류에 관계 없이 ftp, pop, smtp, http등 여러가지 어플리케이션 계층 프로토콜 기반의 응용 프로그램을 개발 할 수 있음
- Servlet을 활동하는 주요 서버환경은 웹으로 웹환경에서는 http 프로토콜을 사용
- 클라이언트의 요청에 대하여 Servlet 컨테이너에 의해 독립된 스레드 기반으로 서비스가 되는 기술로서 다중 스레드가 서비스가 기본적으로 제공됨. 그러므로 프로세스 기반의 서비스인 CGI에 비해 수행 속도 빠름. 다만 CGI는 모든 web서버가 지원하는 표준기술 인 반면 Servlet은 Web표준 기술 아님.
- 잘정의된 유용한 api을 상속받아 사용
* 컨테이너 : servlet의 생성부터 소멸까지 과정을 관리.
요청이 들어올 때마다 새로운 자바 스레드 만든다. (이것이 Tomcat)
톰켓같은 was가 java파일을 컴파일해서 Class로 만들고 메모리에 올려 servlet객체를 만든다.
* 빈(bean) : 반복적으로 코드를 따로 작성하여 재사용하기 위해 만들어진 클래스. 데이터 처리 담당
servlet의 이점
- mvc 컨트롤러와 뷰의 역할 분담
- 디자이너와 개발자가의 원활한 공동작업 가능
- 유지보수 수월
- 기능의 확장 용이
- 프로그래머가 html,자바스크립트 스타일 시트 등 복잡한 기술을 모두 알아야 할 필요가 있음
- 스레드 기반 동작
- 서블릿 객체가 메모리 상에 한개만 생성
- 한번 메모리 할당된 서블릿 객체는 정해진 시기가 될때까지 메모리 영역에 유지
- 동시에 요청에 대히여 멀티 스레드 동작하므로 다중작업 가능
- 서버와 운영체제에 비의존적
'Servlet & JSP' 카테고리의 다른 글
Servlet 구현 환경 (0) | 2019.06.20 |
---|---|
@Annotation (0) | 2019.06.20 |
Get/Post 방식 (0) | 2019.06.20 |
JSP (0) | 2019.06.20 |
Web programming (0) | 2019.06.20 |