JSP (Java Server Pages)
JSP는서블릿의 단점을 보완하고자 만든 서블릿 기반은 스크립트 기술이다. 서블릿을 이용하게 되면 웹 프로그래밍을 할 수 있지만 자바에 대한 지식이 필요하며 화면 인터페이스 구현에 많은 코드를 필요로하기 때문에 비 효율적인 면이 있다. 그래서 서블릿을 작성하지 않고도 간편하게 프로그래밍할 수 있는 기술이 JSP 다.
JSP는 Java 소스로 사용하여 웹페이지에 접근하고 페이지 전환을 통하여 웹브라우저에 전달한다.
즉, JSP기술의 장점을 최대한 활용 할 수 있는 웹 애플리케이션 구조에서 사용자에게 결과를 보여주는 프리젠테이션 층을 담당한다.
- HTML 내부에 JAVA 코드를 삽입하는 형식
- JSP 가 실행되면 자바 서블릿으로 변환되며 웹 어플리케이션 서버에서 동작되면서 필요한 기능을 수행하고 그렇게 생성된 데이터를 웹페이지와 함께 클라이언트로 응답하는 프로세스
JSP 태그 종류
* 지시자 속성 종류
- page : 해당 페이지의 전체적인 속성 지정
- include : 별도의 페이지를 현재 페이지에 삽입
- taglib : 사용자가 만든 tag들을 태그 라이브러리라고 하는데, 이러한 태그 라이브러리를 사용하기 위해 사용하는 지시자. uri(태그 라이브러리의 위치값) 및 prefix(태그를 가리키는 이름 값) 속성이 있다.
* action 태그 : JSP페이지 내에서 어떤 동작을 하도록 지시하는 태그 - 예) URL 이동, Page include 등
- <jsp:include> : 다른 페이지의 실행 결과를 현재 페이지에 포함시켜줌
<jsp:include page=페이지 파일 flush="false/> : 특정 페이지를 삽입, flush는 일반적으로 false로 설정함. flush는 출력 버퍼를 비울지 결정하는 속성, true로 지정한다면 출력 버퍼가 비워지고 모든 헤더 정보를 웹 브라우저에 전송하게 되는데, 이렇게 되면 나중에 헤더정보를 추가하게 되어도 반영이 안된다. - <jsp:forward> : 페이지 간의 제어를 이동시켜줌
<jsp:forward page=페이지 파일/> : 특정 페이지로 이동, 이전 페이지는 지워지고, 이전 페이지의 URL은 유지 - <jsp:useBean> : 자바빈(java bean)을 페이지에서 사용할 수 있게 해줌
- <jsp:setProperty> : Property 값을 세팅할 때 사용
- <jsp:getProperty> : Property 값을 가져올 때 사용
- <jsp:param> : include, forward 안에서 사용되며, 인자를 추가할 때 사용
<jsp:param name=이름 vaule=값 /> : forward나 include 태그에 데이터 전달을 목적으로 사용되는 태그
JSTL (JSP Standard Tag Library)
- JSP 표준 라이브러리로, JSP에서 자주 사용하는 기능을 미리 구현해 놓은 커스텀 태그 라이브러리 모음
태그 라이브러리 선언
자바에서 import문을 선언하듯 JSP에서도 JSTL 확장 태그를 사용하려면 taglib 지시자로 라이브러리를 선언해야 한다.
JSP 지시자 태그 <%@ taglib %>를 사용해서 다음과 같이 선언한다.
<%@ taglib prefix="접두사" uri="URI" %>
- uri : 태그 라이브러리의 네임 스페이스 URI 식별자
- prefix : JSTL 태그를 사용할때 태그 이름 앞에 붙일 접두사
태그 라이브러리별 표준 선언문
prefix를 꼭 저렇게 지정해야 하는 건 아니지만 JSTL에서 제안하는 표준 접두사이므로 똑같이 사용하는게 좋다.
태그 라이브러리별 태그 정리
참고 사이트
< JSP >
https://chobopark.tistory.com/45
< JSTL >
'Study > JSP' 카테고리의 다른 글
[JSP] JSTL Format 태그 (I18N 국제화) (0) | 2023.06.22 |
---|---|
[JSP] JSTL Function 태그 (0) | 2023.06.22 |
[JSP] JSTL Core 태그 (0) | 2023.06.22 |