본문 바로가기

BackEnd/JSP

[JSP 웹 프로그래밍] JSP 표준 태그 라이브러리 1 (Core 태그)

728x90
반응형

1. JSTL( JSP Standard Tag Library)
   ▷ JSP 페이지에서 스크립트 요소로 인한 코드의 복잡함을 해결하기 위한 일종의 사용자 정의 태그의 표준
   ▷ JSP 페이지의 로직을 담당하는 부분인 if, for, while, 데이터베이스 처리 등과 관련 된 코드를 JSTL로 대치하여 

        코드를 깔끔하게 하고 가독성을 좋게 하는 것
   ▷ JSP 내장 객체에 쉽게 접근할 수 있을 뿐 아니라 파라미터, 헤더, 쿠키 등의 복잡한 코드를 사용하지 않고 쉽게 

        직관적으로 사용
   ▷ 객체 간의 비교를 equals( ) 메소드로 처리하는 대신 ==와 같은 간단한 연산자로 구현이 가능

 

 

2. JSTL이 제공하는 태그의 종류


◎ JSTL이 제공하는 태그 사용
   ▷ JSP 페이지에 <%@ taglib…%> 디렉티브 태그를 사용

      ▶ prefix 속성은 uri 속성에 명시된 값 대신 해당 페이지에서 prefix 속성 값으로 명시된 값을 사용하겠다는 것을 의미

   ▷ JSTL 라이브러리인 jstl.jar 파일이 필요

 

◎ Core 태그
   ▷ Core 태그의 종류

 

 

◎ 웹 브라우저 헤더를 변수에 설정하고 설정한 변수 삭제하기 예제

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSTL</title>
</head>
<body>
	browser 변수 값 설정
	<c:set var="browser" value="${header['User-Agent']}" />
	<br>
	<c:out value="${browser}" />
	<p>browser 변수 값 제거 후
		<c:remove var="browser" />
		<c:out value="${browser}" />		
</body>
</html>


결과 화면은 아래와 같고 변수 값을 설정하고 제거할 수 있습니다.

 

 

◎ 숫자가 짝수 또는 홀수인지 판단하기 예제

1. core02.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSTL</title>
</head>
<body>
	<form action="core02_process.jsp" method="post">
		<p> 숫자 : <input type="text" name="number">
		<p> <input type="submit" value="전송">		
	</form>
</body>
</html>​



2. core02_process.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSTL</title>
</head>
<body>
	<%
		String number = request.getParameter("number");
	%>
	<c:set var="number" value="<%=number %>" />
	<c:choose>
		<c:when test="${number%2==0}">
			<c:out value="${number}" />은 짝수입니다.
		</c:when>
		<c:when test="${number%2==1}">
			<c:out value="${number}" />은 홀수입니다.
		</c:when>
		<c:otherwise>
			숫자가 아닙니다.
		</c:otherwise>
	</c:choose>		
</body>
</html>​


'12은 짝수입니다.'라는 결과가 출력됩니다.

 

 

◎ 구구단 출력하기 예제

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSTL</title>
</head>
<body>
	<h3>구구단</h3>
	<table>
		<c:forEach var="i" begin="1" end="9">
			<tr>
				<c:forEach var="j" begin="1" end="9">
					<td width=100>${ i }*${ j } = ${ i * j }</td>
				</c:forEach>
			</tr>
		</c:forEach>
	</table>	
</body>
</html>

 

 

Core 태그를 이용해서 스크립틀릿 태그를 별도로 사용하지 않고 조건문들을 사용할 수 있었습니다!!

 

코드를 간략하게 하기 위해서 사용한다고 하는데요 어떤 기업에서 사용할지 궁금하네요ㅎㅎ

 

그래도 알아두면 어딜가든 이해하기 쉽겠어요!!

 

많은 분들의 피드백은 언제나 환영합니다!  많은 댓글 부탁드려요~~

 

728x90
반응형