JSTL : Java Standard Tag Library 의 약자로 JSP 표준 라이브러리.
- JSP에서 자주 사용하는 기능들을 모아 구현해 놓은 커스텀 태그 라이브러리
- JSTL은 EL 방식을 사용하여 표현한다.
- Apache 재단에서 만든 custiom tag
- 스크립트 릿으로 작성해야 할 로직들을 태그로 작성이 가능하다.
핵심 :
변수 기능 지원
- set : JSP에서 사용 될 변수설정
- remove : 설정한 변수 제거
반복문, 조건문
- if : 조건문
- choose : 다중 조건 처리 (else if)
- forEach : collection의 각 항목을 처리 할때 사용하는 반복문 (자바의 향상된 for문의 기능 지원)
- forTokens : 구분자 설정을 통해 분리된 토큰을 처리시 사용
if 태그 : 조건문
<c:if test="true">
true이므로 실행한다.
</c:if>
test=” “ 안에 true or false가 올 수 있으며 당연히 연산 결과도 올 수 있다
Choose 태그 : when == else if, otherwise == else 역할
<c:choose>
<c:when test="${requestScope.name=='홍길동'}">
홍길동님이 맞습니다.<br>
나이는 ${requestScope.age}세 입니다.
</c:when>
<c:when test="${requestScope.name == '동길홍'}">
동길홍님이 맞습니다.<br>
나이는 ${requestScope.age}세 입니다.
</c:when>
<!-- else 역할 -->
<c:otherwise>
홍길동 아님
</c:otherwise>
</c:choose>
forEach 태그 : 반복문
<c:forEach items="${[Scope종류].[전송대상이름]}" var="[요소지정변수]" varStatus="[변수]">
</c:forEach>
<!-- <c:forEach begin="[시작숫자]" end="[끝나는숫자]" var="[요소지정 변수]"> -->
<c:forEach begin="1" end="5" var="num">
${num}<br>
</c:forEach>
items : 대상 배열 또는 컬렉션
var : 요소를 저장할 변수
varStatus : index와 count 속성이 있다. (index는 0부터, count는 1부터 시작)
set 태그 : 변수 저장
<c:set var="[지정할 변수이름]" value="${[ ]Scope.[name].[variable]}"></c:set>
import 태그 : (include)
<c:import url="[header or footer path]"></c:import>
JSP에서 include action tag와 같은 기능을 합니다.
차이는 JSTL import는 다른 웹 어플리케이션의 자원을 이용할 수 있다는 것입니다.
(JSP는 자신의 웹 어플리케이션 프로젝트의 자원만 이용할 수 있다!)
EL : Expression Language
- JSP 스크립트 언어.
- 기존의 Script tag의 표현식 <%=변수 %> tag에서 업그레이드된 버전 ⇒ ${ 변수 }
${ }
- JSP가 실행될 때 즉시 반영된다.
- 객체 프로퍼티 값을 꺼낼때 주로 사용
핵심
- JSP 속성영역 (requset, response, session, application)에 저장된 객체의 property를 가져올수 있다.
- 리터럴 데이터, 다양한 연산결과 출력이 가능하다.
- JSTL과 연동하여 사용이 가능하다 (핵심)
실제로 EL태그를 사용하면 되게 간단하게 변수들을 가져오고 사용할 수 있으니 눈여겨 보는게 좋습니다!….
자주 쓰고 많이 쓰는것들만 확인해보죠!
Session 에서 Attribute 가져오기
String member="Ji sung";
session.setAttribute("member",member);
${member }
매우매우 간단하죠?….세션에 저장할때 지정한 이름으로 접근이 가능하며, 단순하게 ${} 안에 적어주면 끗.
다만 위와 같이 작성하게 되면 모든 보관소를 다 검색하여서 값을 가져오지만, 특정보관소만 찾도록 지정이 가능합니다!
String member="Ji sung";
session.setAttribute("member",member);
${sessionScope.member }
이러면 끗….너무 쉽죠?… 다만 표현방식이 너무나도 많아서 다 정리하진 못하구
제일 많이 사용하는건 위와 같이 property를 가져올때 되게 자주 쓰이게 됩니다!
728x90
'JSP' 카테고리의 다른 글
Servlet으로 웹페이지 구현해보기 (로그인) (0) | 2023.01.16 |
---|---|
일단 서버란 뭘까요…? 서블릿이란?…뭘까요오오??.. (0) | 2023.01.16 |
JSP 내장 객체의 종류, 영역 ? (0) | 2023.01.16 |
WHAT IS JSP?? Java Server Page (0) | 2023.01.16 |