Web

JSP (1)

JSP (1)

JSP 개요

1) JSP의 특징

JSP는 Java Server Pages의 약어로 웹 페이지를 동적으로 처리할 수 있는 기술 중의 하나로 서블릿 프로그램의 기능을 HTML 파일 내에 스크립트 형식으롤 구현할 수 있다.

프리젠테이션 로직과 비즈니스 로직의 분리

브라우저 화면에서의 표현을 꾸미는 절차 및 기능을 프리젠테이션 로직(presentation Logic)이라고 하며, 사용자의 요청에 대한 내부적인 처리 절차 및 기능을 비즈니스 로직(Business Logic)이라고 한다.


JSP는 이러한 프리젠테이션 로직과 비즈니스 로직을 효울적으로 분리하여 동적 웹 사이트를 구축할 수 있는 훌륭한 서버 스크립트이다. 특히 비즈니스 로직은 자바빈즈(Javabeans) 컴포넌트 모델을 통하여 구현할 수 있다.


이러한 프리젠테이션 로직과 비즈니스 로직을 분리하는 것은 중요하다.
그 이유는, 이 두가지를 분리함으로써 웹 페이지의 디자인이 변경되더라도 내부 비즈니스 로직을 처리하는 JSP 및 자바빈즈(Javabeans) 코드를 변경할 필요가 없기 때문이다. 또한 비즈니스 로직이 완전히 바뀌는 상황이라도 프리젠테이션 로직을 담당하는 코드에는 전혀 영향을 미치지 않기 때문이다.


프리젠테이션 로직과 비즈니스 로직의 분리와 관련하여 MVC(Model-View-Controller) 모델을 통한 JSP(프리젠테이션 로직 View)-자바빈즈(비즈니스로직, Model) - 서블릿(Controller)의 연계가 가능하다.

2) JSP의 처리과정

JSP 파일 최초 요청 시의 동작 과정
  • JSP 파일은 일단 Servlet인 Java 소스 파일로 변환되고 다시 class 파일로 컴파일된다.
  • 이 class 파일이 JSP/Servlet 컨테이너인 Tomcat 내에서 실행되어 그 결과가 최종적으로 웹 브라우저로 전달된다.
    JSP 파일 '재요청' 시의 동작 과정
  • 변환 및 컴파일 과정은 맨 처음 요청 했을 때와 JSP페이지가 변화했을 때에만 이루어지는 과정이다.
  • 한번이라도 요청했던 JSP 파일을 다시 재요청하면 이미 메묄에 적재된 class가 응답을 주기 때문에 대체로 평균 응답 시간이 매우 짧다.

JSP의 스크립팅 요소(Scripting Element)

1. 스크립트릿 (Scrptlet)

가장 많이 활용되는 JSP 구성 요소로서 JSP 페이지 내에서 java 코드 구현을 위해 사용한다.

<%  //java code 작성 %>

서블릿으로 변환될 때, 서블릿의 service 메소드 안에 구현된다. 스크립트릿 태그내에서 선언된 변수는 로컬변수이다.

2. 선언 (Declaration)

멤버변수 선언이나 메소드 선언에 사용된다. 서블릿으로 변환될 때 서블릿의 멤버변수나 멤버 메소드로 선언된다. 스크립트릿 내 선언한 변수와 혼동되지 않도록 한다.

<%! //속성 선언 및 method 작성 %>

3. 표현식 (Expression)

간단한 데이터 출력이나 메소드 호출을 통한 데이터 출력을 위해 활용한다, 즉, 브라우저에 데이터를 출력할 때 사용한다. 코드 마지막에 세미콜론(;)이 없다는 것에 주의한다.

<=  //출력할 값, 변수, 함수 결과 %>

4. 주석

JSP에서 활용할 수 있는 주석의 종류는 총 3가지이다.
HTML / JSP 페이지 주석 / Java 주석.

<%-- comment --%>
</*
  comment
*

'Web' 카테고리의 다른 글

JSP (3) - JSP 기본객체  (0) 2019.09.29
JSP (2) - Directive Tag(지시자 태그)  (0) 2019.09.29
Servlet (4) - Session  (0) 2019.09.28
Servlet (3) - Cookie  (0) 2019.09.28
Servlet (2)  (0) 2019.09.28