본문 바로가기

개발일지/JSP

JSP / Servlet 공통점과 차이점

 /* 공통점  */ 

자바를 이용해 웹을 만드는 기술이라는 점이다. 일반적으로 웹서버는 정적인 페이지만 제공을 하게 되어있는데 동적으로 돌아갈 수 있도록 도와주는 어플리케이션들이다. 사용자(클라이언트)의 요청에 따라서 웹 서버가 응답할 수 있도록 구현이 되어 있는 프로그래밍 기술이다. 다양한 오픈소스 라이브러리와 개발 도구들이 존재한다. MVC 패턴을 쉽게 적용해 역할 분담이 가능하며 효과적인 웹 어플리케이션 설계가 가능하다.

 

 

 ** Servlet  ** 

- 자바를 이용한 서버 프로그래밍 기술로 자바 API 모두 사용 가능

- 다양한 오픈소스 라이브러리와 개발도구 활용 가능

- 운영체제와 하드웨어 영향을 받지 않아서 한 번 개발된 애플리케이션은 다양한 서버 환경에서도 실행할 수 있음 

- 초기 웹 프로그래밍 기술인 CDI를 대체한다.

- 자바 언어를 이용해서 작성하니까 기본적으로 자바 언어에 대해 지식을 갖고 있어야 프로그램 작성이 가능하다. 동적으로 HTML 문서를 생성해서 서비스를 하는데 목적이 있음

 

* 단점 *

- 처리속도가 늦고, 화면제어의 불편함, 많은 메모리를 요구한다

- 화면에 표현될 HTML 코드를 프로그램 적으로 작성해야 한다.

- 서비스 하기 전 반드시 컴파일을 해야한다. 

 

 

 ** JSP  (Java Server Pages) ** 

- 서블릿 기반의 '서버 스크립트 기술'

- HTML 코딩하기 어렵고 불편해서 HTML 내부에 Java 코드를 삽입하려고 나온 형식이 JSP이다.

- 서블릿의 단점을 보완하고자 만든 서블릿 기반의 스크립트 기술임

- 서블릿을 이용하게 되면 웹프로그래밍을 할 수 있지만 자바에 대한 지식이 필요하며, 화면 인터페이스 구현에 너무 많은 코드를 필요로 하는 등 비효율적인 측면이 있었다. 때문에 서블릿을 작성하지 않고도 간편하게 웹프로그래밍을 구현하게 만든 기술이 JSP(Java Server Pages)

 

 

 /* 차이점 */ 

servlet JSP
- 자바 코드로 구현하고 나서 컴파일하고 배포
- HTML 태그로 문자열("")로 처리해야 함
- 코드가 수정되면 다시 컴파일하고 배포해야 함
- 자바 안에 HTML
- 키워드가 태그화 돼서 서블릿에 비해 배우기 쉬움
- 자바 코드를 <%%>태그 안에 처리해줘야함
- HTML처럼 태그를 사용하여 자바코드도 사용 가능
- HTML 안에 자바

 

'개발일지 > JSP' 카테고리의 다른 글

[JSP] 커피주문 예제  (0) 2021.11.24
서블릿과 서블릿 컨테이너  (0) 2021.11.24
웹 서비스 설계구조(Web Service Architecture)  (0) 2021.11.24
web.xml 기본설정  (0) 2021.11.23
HTTP 프로토콜  (0) 2021.11.23