- 자바(Java)를 기반으로 하는 동적 웹 사이트 구축 언어
- 선 마이크로시스템즈(Sun Microsystems)에서 개발
- 서버 사이드 스크립트(server side script) 언어
- HTML 문서 내부에 태그와 함께 사용
- 확장자는 .jsp
- 플랫폼에 독립적
- 서버 자원의 효율적 관리
- 컴포넌트 기반 개발
- 비즈니스 로직과 프리젠테이션 로직의 분리
웹페이지의 디자인이 변경되더라도 서버 내부에서 데이터를 처리하는 jsp 또는 자
바빈즈(Javabeans) 등의 코드를 변경할 필요가 없음
ex) 결제 시스템 변경과 같은 비즈니스 로직이 완전히 변경되어도 프리젠테이션 로직을 담당하는 코드에는 전혀 영향을 받지 않음
- JSP 나 자바빈즈에서 공통적으로 사용되는 컴포넌트를 만들어 재사용 가능
- 주소 검색 기능, 한글 처리 기능, 데이터베이스 연결 기능 등을 공통 컴포넌트로
개발
- JSTL (Java Standard Tag Library)
- EL (Expression Language)
- 커스텀 태그 (Custom Tag)
- 웹 어플리케이션 개발을 용이
- 동적 웹 사이트 개발시간을 대폭적으로 단축
- JSP의 최초 요청 시에 해당 JSP를 컴파일하여 서블릿으로 구성하고 메모리로 적재
- 이후 요청들은 이미 적재되어 있는 서블릿에서 바로 응답
- 서버 자원을 효율적으로 활용하면서 동시에 응답속도도 상당히 빠름
- JSP는 다른 언어에 비해 느리지 않음
- 웹 사이트의 응답 속도
- 언어 보다는 서버의 관리 기술 및 로직 처리의 적정성 및 효율성에 더 영향