본문 바로가기

JSP&JSTL 수업 정리

JSP/JSTL 1일차.

JSP ( java server pages )

HTML 코드에 JAVA 코드를 넣어 동적웹페이지를 생성하는 웹어플리케이션 도구

 

주석  <%--  주석 --%>

jsp로 html문서를 통제할 수 있지만 반대는 적용되지 않는다.

<%-- <h2>html문서입니다.</h2> html코드를 막을 수 O --%> 
<!-- <% name.length() %> 자바코드를 막을 수 X -->

 

scriptlet 스클립틀릿

JSP파일에서 Java코드를 쓸 때, 사용되는 코드 블럭을 말함

지시자  : 컨테이너에게 해당 JSP페이지 처리방방법에 대해 지시

<%@  지시자   %>   :   Page, include, taglib 등이 있음.

Include 지시자

jsp file을 해당 페이지에 포함시키는 것으로반복적으로 사용되는 부분을 쓸 때 유용복사 & 붙여넣기와 같은 효과로

include한 파일에서 쓴 변수를 해당 페이지에서 사용 가능.

taglib 지시자

JSTL사용시 선언,   JSP에서 불필요한 자바코드를 줄일 수 있음

 

JSP 데이터 객체

 

pageContext 해당 jsp 페이지 관련 흐름 제어 및 내장 객체 관리하는 객체
해당 jsp 페이지 내에서만 데이터 사용 가능
해당 페이지를 벗어나면 데이터 사용 불가
request 클라이언트의 요청을 객체화 한 것
request를 전달받은 페이지에서 데이터 사용 가능
페이지를 벗어나도 request가 전달된 페이지라면 데이터 사용 가능
session 클라이언트 상태 저장을 위한 객체
모든 jsp에서 데이터 공유 가능
어느 페이지에서도 이용 가능
브라우저가 종료되면 저장 데이터 삭제
application 초기화, jsp와 컨테이너 간 통신을 돕는 객체
모든 jsp에서 데이터 공유 가능
어느 페이지에서라도 이용 가능
서버가 종료 혹 서버에서 어플리케이션이 종료되기 전까지 이용 가능

 

EL ( Expression Language )

JSP 2.0에서 새롭게 추가된 스크립트 언어
[ 주요 특징 ]
1) JSP 속성영역 (request,  response, session, application) 저장된 속성 객체의 property를 출력한다 
2) 리터럴 데이터, 다양한 연산결과 출력이 가능하다 
3) JSTL과 연동이 가능하다
 

EL 내장객체

분류 내장객체 설명 예시
스코프 pageScope page 영역의 Attribute에 바인딩 된 객체를 참조하는 Map객체 ${pageScope.속성명}
requestScope request 영역의 Attribute에 바인딩 된 객체를 참조하는 Map객체 ${requestScope.속성명}
sessionScope session 영역의 Attribute에 바인딩 된 객체를 참조하는 Map객체 ${sessionScope.속성명}
applicationScope application 영역의 Attribute에 바인딩 된 객체를 참조하는 Map객체 ${applicationScope.속성명}
요청 파라미터 param HTTP 요청 파라미터 값 참조하는 Map 객체 ${param.파라미터명}
paramValues HTTP 요청 파라미터를 배열로 참조  param과는 다르게 배열이므로 속성명 뒤에 배열의 요소를 참조하는것처럼 [index]를 붙여주어야 함 ${paramValues.속성명[index]}
${paramValues.name[2]}

JSTL Core 태그

- Core 태그를 사용하기 위해서는 taglib 지시자(directive)를 선언해야 한다.
- <%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix ="c" %>

 

(mvn에서 다운받아서 jstl jar파일을 넣어야함 )

<c:out> <%= … %> 표현식과 동일하게 jsp 페이지에 출력을 하는 태그
<c:set> 4개 영역의 jsp 저장소에 변수를 선언하는 태그
<c:remove> 4개 영역의 jsp 저장소에 변수된 변수를 제거하는 태그
<c:if> If문과 같은 기능을 하는 태그 (단일조건)
<c:choose> Switch + 다중if문과 비슷한 기능을 하는 태그
<c:when> 이용하여 조건을 선언 여러 번 사용가능. (다중 조건)
<c:otherwise> 조건에 맞지 않는 값 default비슷
<c:when>
<c:otherwise>
<c:forEach> 배열이나 Collection 객체 요소를 탐색하여 나타내는 태그 (반복문)
<c:import> Include 지시자와 같이 다른 페이지를 포함하기 위한 태그
(page 지시자의 impor와는 다른 기능임)

 

'JSP&JSTL 수업 정리' 카테고리의 다른 글

JSP/JSTL 5일차.  (0) 2024.10.25
JSP/JSTL 4일차.  (0) 2024.10.24
JSP/JSTL 3일차.  (0) 2024.10.23
JSP/JSTL 2일차.  (0) 2024.10.22