본문 바로가기
Web/JSP

[JSP] JSP란

by 코딩하는 랄로 2024. 1. 16.
728x90

JSP란?

JSP는 Java Server Page 의 줄임말로, 동적 웹페이지를 개발하기 위한 웹 프로그래밍 기술이다. 이름에서 알 수 있듯이 JAVA를 사용하여 Server 측에서 Web Page를 동적으로 생성하여 웹 브라우저로 전송해준다.

 

또한, JSP 는 기업용 자바 기술의 집합체인 Java EE(Java Platform Enterprise Edition)의 핵심 요소로, 정부나 공기업 주도의 사업 등 대규모 기업용 시스템 구축에 주로 사용된다.

 

 

정적 VS 동적 웹 페이지

JSP는 동적 웹 페이지를 생성하기 위한 기술이다. 그렇기 때문에 JSP를 더 잘 이해하기 위해서는 정적 웹페이지와 동적 웹페이지의 차이를 알아야 한다.

정적 웹페이지 동적 웹페이지
웹 서버에 저장되어 있는 파일 그대로 웹 브라우저에 전송.
클라이언트가 어떤 형태로 요청하더라도 동일한 페이지를 보여줌.
이미 완성되어 있는 페이지를 응답해줌
동일한 페이지를 요청하더라도 페이지의 내용이 달라질 수 있음.
클라이언트에 요청에 따라 웹 페이지의 내용을 구성하여 그때 그때 생성하여 보내줌.
페이지가 완성되어 있지 않음

 

동적 웹페이지의 기술로는 대표적으로 JSP와 Servlet이 있고, 그 외에도 ASP, PHP 등이 있다.

 

 

Servlet 이란

Servlet은 서버에서 웹페이지를 동적으로 생성하거나 데이터 처리를 수행하기 위해 자바로 작성된 프로그램이다. Servlet은 Java 로 작성되며, 코드 안에 HTML 태그가 삽입되어 있는 .java 확장자를 가진다. 이를 클라이언트의 요청에 따라 컴파일하고 실행하여 웹페이지를 만들어 응답의 결과로 주는 것이다.

 

Servlet 은 간단하게 클라이언트 요청을 처리하고 그 결과를 다시 클라이언트에게 전송하는 servlet 클래스의 구현 규칙을 지킨 자바프로그램이라고 이해하면 된다.

 

Servlet은 자바언어를 동적 웹페이지를 개발하기 쉽게 만든 API 이며 이 규약에 맞는 라이브러리나 클래스들을 상속 및 구현하여 만든 클래스들을 서블릿이라고 하는 것이다.

 

 

JSP 의 등장

Servlet 과는 반대로 HTML 페이지 내의 자바 코드가 들어가는 것이 JSP이다. Java 코드 내의 HTML이 들어가서 가독성이 떨어지고 코드가 복잡해지는 Servlet의 단점을 보완하고자 만든 Servlet 기반의 스크립트 기술인 것이다.

 

Servlet을 사용하게 되면 자바에 대한 지식도 필요하고 화면 인터페이스 구현에 너무 많은 코드를 필요로 하기 때문에 비효율적인 측면이 존재하여 보다 편리하게 웹 프로그래밍을 할 수 있도록 나온 기술이 JSP이다.

 

또한, JSP는 서버 스크립트 기반의 기술인데 스크립트 기술이란 미리 약속된 규정에 따라 간단한 키워드를 조합하여 입력하면, 실행 시점에 각각의 키워드에 매핑이 되어 있는 코드로 변환 후에 실행되는 형태이다.

 

 

JSP VS Servlet

Servlet JSP
자바 코드로 구현하고 컴파일하고 배포 키워드가 대그화 되어 서블릿에 비해 쉬움
HTML 태그로 문자열("") 스크림으로 처리 자바코드를 <%%> 태그 안에 처리
코드가 수정되면 다시 컴파일하고 배포 HTML처럼 태그를 사용하여 자바코드도 사용이 가능

 

 

 

 

 

참조 : 에이콘아카데미

728x90