** 표현 언어(EL:Expression Language) **
- 데이터를 웹 페이지에 표시하는데 사용하는 태그
- JSP 출력에 대한 부분을 쉽게 하기 위해 개발한 태그
- 등장배경 : 자바코드로 내장 객체(request, session 등)에 저장된 속성 값에 접근하면 코드가 길어지고 지저분해짐
ex) ${ expr }
* 요청 파마리터 처리
request.getParamter()--->param 객체
- param : request.getParameter()와 동일한 역할로, 파라미터 값을 알려준다
- paramValues : request.getParamterValues()와 동일한 역할로, 동일한 이름으로 전달되는 파라미터 값들(라디오버튼, 체크박스 등)을 배열형태로 얻어온다.
ex)
request.getParameter("id") ---> ${param.id}
request.getParameter("pw") ---> ${param.pw}
* 내장객체 접근
- pageScope : 내장객체 pageContext
- requestScope : 내장객체 request
- sessionScope : 내장객체 session
- applicationScope : 내장객체 application
** JSTL (JSP Standard Tag Library) **
- JSP 표준 태크 라이브러리
- 일관성 없던 커스텀 태그(JSP를 작성할 때 자주 사용되는 자바 코드를 웹에서 사용할 수 있는 태크 형태로 만드는 기술)들을 표준화 한 것
* 태그 라이브러리 사용하기
- JSTL 제공 기능 중 core를 사용하기 위한 taglib
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
- uri : 사용할 태그 라이브러리 식별자
- prefix : 태그에서 사용할 접두어
* JSTL core 태그
태그 | 설명 | 기본형식 |
<c:set> | 변수에 값을 설정 |
<c:set var="변수이름" value="저장할 값" [scope="{page|request|session|application}]> *scope 속성 기본값 : page |
<c:remove> | 변수에 설정된 값을 제거 | <c:remove var="변수 이름" [scope="{page|request|session|application}]> |
<c:if> | 조건에 따라 처리를 달리 할 때 사용 |
<c:if test="조건식> 조건이 참일 경우 실행할 문장 </c:if> |
<c:choose> | 여러 조건에 따라 처리를 달리 할 때 사용 |
<c:choose> <c:when test="조건1"> 실행 값</c:when> <c:when test="조건2"> 실행 값</c:when> <c:otherwise> 실행 값</c:when> </c:choose> |
<c:forEach> |
구분자로 구분된 각각의 토큰을 처리할 때 사용 집합체에 저장되어 있는 값들을 순차적으로 처리할 떄 사용할 수 있는 태그 |
<c:forEach [var="변수 이름"] items="배열과 같은 집합체" [varStatus="반복상태정보를 위한 변수"]> 실행 값 </c:forEach>
* varStatus 속성 : 반복 상태에 관련된 정보를 알려줌 - index : 현재 반복중인 항목의 index 알려줌 - count : 현재 몇 번째를 반복 중인지 알려줌 - first : 현재 루프가 처음인지 여부 - last : 현재 루프가 마지막인지 여부 - begin : 반복에 사용 될 것 중 첫번째 항목의 index - end : 반복에 사용될 것 중 마지막 항목의 index |
<c:forTokens> | 구분자로 분리된 각각의 토큰을 처리할 때 사용 |
<c:forTokens var="토큰을 저장할 변수" items="토큰으로 나눌 문자열" delims="구분자"> 실행 값 </c:forTokens> |
<c:import> | 외부의 자원을 URL을 지정하여 가져다 사용 |
<c:import url="URL" [var="변수 이름"] [scope="영역"] [charEncoding="charEncoding"]><c:import> |
<c:redirect> | 지정된 경로로 이동 | <c:redirect url="URL" [context="경로명"]> |
<c:url> | url 재작성 | <c:url value="URL" [var="변수 이름"] [scope="영역"]></c:url> |
<c:out> | 데이터를 출력할 때 사용하는 태그, <%= %>대체 | <c:out value="value" [default="기본값"]> |
<c:catch> | 예외처리 |
<c:catch var="변수 이름"> 예외가 발생할 수 있는 코드 </c:catch> |
'1.JAVA Web Programming > [4주차] 게시판 만들기' 카테고리의 다른 글
게시판 - webstudy-board - 회원가입 (0) | 2019.08.11 |
---|---|
게시판 - webstudy-board - Index 페이지 (0) | 2019.08.11 |
게시판 - webstudy-board - controller,model (0) | 2019.08.05 |
게시판 - webstudy-board - board table 생성 (1) | 2019.08.04 |
게시판 - webstudy-board - 기능명세서 (0) | 2019.08.04 |