JSP/JSP: 정리
[JSP]JSP(Java Server Pages)의 개요
데브마우스
2023. 11. 28. 17:56
Java Server Pages(이하 JSP)는 무엇인가요?
JSP는 서버 측 웹 프로그래밍 언어입니다. 클라이언트 측 웹 브라우저에서 JSP에 웹 페이지를 요청하면 HTML 코드로 변환하여 클라이언트에게 제공합니다. 그 HTML 코드 안에는 자바 코드가 추가되어 있습니다.
JSP의 특징은 무엇인가요?
- 서블릿 기술의 확장: JSP는 서블릿의 모든 기능(JDBC, JNDI, EJB 등의 자바 API)을 사용할 수 있습니다.
- 유지 관리의 용이: JSP는 프레젠테이션 로직과 비즈니스 로직을 분리할 수 있습니다.
- 빠른 개발 속도: 코드 수정 시, 서블릿에서는 업데이트를 하고 다시 컴파일해야 하지만 JSP는 다시 컴파일 하지 않아도 됩니다.
- 코드 길이 감소: JSP의 다양한 태그와 라이브러리(액션 태그, JSTL, 사용자 정의 태그 등)과 표현 언어, 내장 객체로 서블릿 대비 코드 길이를 감소시킬 수 있습니다.
JSP로 무엇을 할 수 있나요?
JSP로 클라이언트에게 동적 웹 페이지를 제공할 수 있습니다. 동적 웹 페이지는 사용자의 활동에 따라 변경된 내용이 데이터 베이스에 저장될 수 있으며 결과가 그 웹 페이지에 반영됩니다.
JSP는 페이지를 어떻게 처리하나요? (JSP페이지의 처리과정)
JSP 페이지는 [JSP 요청]->[번역]->[컴파일]->[JSP 서블릿 실행 응답]의 처리 과정을 거칩니다.
- JSP 요청: 크롬, 엣지, 파이어폭스 같은 웹 브라우저가 웹 서버에 JSP를 요청하면, 웹 서버는 요청된 webPage.jsp에서 jsp 확장자를 발견하여 JSP 페이지임을 학인하고 웹 서버에 있는 JSP 컨테이너에 전달합니다.
- 번역: JSP 컨테이너는 JSP 페이지를 서블릿 프로그램(webPage _jsp.java)로 변환합니다.
- 컴파일: JSP 컨테이너가 서블릿 프로그램을 컴파일하여 webPage_jsp.class로 만들고 이를 웹 서버에 전달합니다.
- JSP 서블릿 실행 응답: 웹 서버는 정적 웹 페이지처럼 .class의 실행 결과를 웹 브라우저에 응답으로 전달합니다. 웹 브라우저는 새로 가공된 HTML 페이지를 동적으로 처리한 결과를 보여줍니다.