JSP란?
- JSP는 동적인 웹페이지를 개발하기 위한 웹 프로그래밍 기술입니다.
이름에서처럼 JAVA언어를 사용하여 Server측에서 Web Pages을 생성해 웹브라우저로 전송해줍니다.
자바를 서버개발 언어로 자리잡게 한 일등공신입니다.
- JSP는 기업용 자바 기술의 집합체인 Java EE(Java Platform Enterprise Edition)의 핵심 요소이며, Java EE는 대한민국 정부 표준 프레임워크의 근간입니다. 따라서 정부나 공기업 주도의 사업 등 대규모 기업용 시스템 구축에 주로 사용됩니다. 또한 클라우드 시대가 되면서 구글앱엔진과 아마존웹서비스(WAS) 등에서도 지원하기 시작하면서 활용 폭이 더욱 넓어졌습니다.
JSP 장점
- 짧은 코드로 동적인 웹페이지를 생성할수있습니다
- 기본적인 예외는 자동으로 처리됩니다
- 많은 확장 라이브러리를 사용할 수 있습니다
- 스레드 기반으로 실행되어 시스템 자원을 절약해줍니다.
JSP 탄생 배경과 특징, 오늘날의 웹 구동 방식
정적 웹 페이지 (static web page) : 웹 서버에 저장되어있는 파일 그대로 웹브라우저에 전송해 출력하는 가장 기본적인 웹페이지. 클라이언트가 어떤 형태로 요청하더라도 같은 페이지는 항상 동일한 모습을 보여준다.
동적 웹 페이지 (dynamic web page) : 동일한 페이지라 할 지라도 그때그때 내용이 달라질수 있는 웹페이지 입니다.
서버가 클라이언트의 요청을 해석하여 가장 적절한 웹페이지를 그때그때 생서해 보내주는 기술.
동적 웹페이지는 전처리 과정을 거쳐 응답 페이지를 동적으로 생성. 전처리를 어떻게 처리하느냐에 따라 구체적인 동적 웹페이지 기술이 나뉩니다. 대표적으로 JSP와 서블릿이 있고, 다른기술로는 ASP와 PHP등이 있습니다.
서블릿 (Servlet) 의 등장
서블릿은 클라이언트의 요청을 받으면 서버에서 처리한 후 응답으로는 결과값만 보내주는 구조이다.
동적 웹페이지 방식에서의 전처리 부분을 서블릿이 담당하는 구조.
서블릿은 자바파일을 컴파일한 클래스파일 형태이며, 이를 실행하고 관리해주는 런타임을 서블릿 컨테이너라고합니다.
대표적인 서블릿 컨테이너 : 아파치 톰캣
JSP의 등장
서블릿 단점 : 서블릿은 기본적으로 자바코드, 결과로 보여줄 HTML 코드를 일일이 자바로 생성,조합하다보니 코드가 많이 필요함
발상의 전환으로 나온 것이, 기본을 HTML로 하고 필요한 부분만 자바코드를 삽입하는 형태인 JSP가 탄생
JSP구동방식: JSP파일을 서블릿으로 변환하여 서블릿을 실행하는 방식
서블릿으로 컴파일 된 JSP파일은 캐시되므로 실질적 성능저하없이 개발 생산성과 유지보수 편의성을 모두 얻음
또한 JSP가 서블릿으로 변환되어 서블릿 기술도 여전히 사용가능 - 용도에 따라 유리한 기술을 골라 사용 가능
JSP와 서블릿의 차이점
JSP - 클라이언트에 보여지는 결과페이지를 생성할 때 주로 쓰임
서블릿 - UI요소가 없는 제어나 기타처리 용도로 쓰임
오늘날의 웹사이트
오늘날의 웹은 정적 웹페이지와 동적 웹페이지가 혼합된 형태를 띤다.
출처 : 성낙현의 JSP 자바 웹 프로그래밍
'STUDY > SpringLegacy' 카테고리의 다른 글
[Spring] RestTemplate 한글 깨짐 (0) | 2023.04.18 |
---|---|
[SPRING] Tiles framework (0) | 2022.12.27 |
[SPRING] 프로젝트 폴더 구조 분석 (0) | 2022.12.21 |
[JSP] import · JSP태그 · taglib · Include · c:url (0) | 2022.12.20 |
[Spring] 답변형 게시판 만드는 방법 (2) | 2022.09.22 |