<c:out> 태그를 이용한 실습
<c:out> 태그는 화면에 지정한 값을 출력해 주는 태그입니다. 표현 언어와 기능은 거의 동일하지만 기본값 설정 기능 등을 제공하므로 더 편리하게 사용할 수 있습니다. 사용 형식은 다음과 같습니다.
<c:out value="출력값" default="기본값" [escapeXml="boolean값"] />
여기서 value는 출력된 값을, default는 value 속성에 지정된 값이 없을 때 출력할 기본값을, escapeXml은 escape 문자를 반환하는 역할을 합니다(생략할 수 있으며 true).
1. 다음은 회원 가입창에서 입력한 회원 정보를 전달받아 <c:out> 태그를 이용해 화면에 출력하는 예제입니다. 다음과 같이 memberForm.jsp를 작성하여 회원 가입창에서 회원 정보를 입력한 후 member9.jsp를 전달합니다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>회원 등록창</title>
<body>
<form method="post" action="member9.jsp">
<h1 style="text-align:center">회원 등록창</h1>
<table align="center">
<tr>
<td width="200"><p align="right">아이디</td>
<td width="400"><input type="text" name="id"></td>
</tr>
<tr>
<td width="200"><p align="right">비밀번호</td>
<td width="400"><input type="password" name="pwd"></td>
</tr>
<tr>
<td width="200"><p align="right">이름</td>
<td width="400"><p><input type="text" name="name"></td>
</tr>
<tr>
<td width="200"><p align="right">이메일</td>
<td width="400"><p><input type="text" name="email"></td>
</tr>
<tr>
<td width="200"><p> </p></td>
<td width="400">
<input type="submit" value="가입하기">
<input type="reset" value="다시입력">
</td>
</tr>
</table>
</form>
</body>
</html>
2. member9.jsp를 다음과 같이 작성합니다. <c:out> 태그를 이용해 전송된 매개변수 값들을 출력합니다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"
isELIgnored="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
request.setCharacterEncoding("UTF-8");
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>회원 정보 출력창 </title>
</head>
<body>
<table align="center" border="1" >
<tr align="center" bgcolor="lightgreen">
<td width="7%" ><b>아이디</b></td>
<td width="7%" ><b>비밀번호</b></td>
<td width="7%" ><b>이름</b></td>
<td width="7%"><b>이메일</b></td>
</tr>
<c:choose>
<c:when test="${empty param.id}">
<tr align="center">
<td colspan=5>아이디를 입력하세요!!</td>
</tr>
</c:when>
<c:otherwise>
<tr align="center">
<td><c:out value="${param.id}" /></td>
<td><c:out value="${param.pwd}" /></td>
<td><c:out value="${param.name}" /></td>
<td><c:out value="${param.email}" /></td>
</tr>
</c:otherwise>
</c:choose>
</table>
</body>
</html>
3. http:localhost:8080/pro14/test03/memberForm.jsp로 요청하여 회원 가입창에서 회원 정보를 입력한 후 가입하기를 클릭합니다.

4. 그러면 <c:out> 태그를 이용해 전송된 회원 정보를 출력합니다.

프로그래밍을 하다 보면 > 또는 < 그리고 작음따옴표(')나 큰따옴표(") 같은 특수 문자를 출력해야 하는 경우가 있습니다. 그런데 이런 특수 문자들은 HTML 태그에도 사용되므로 각각의 특수 문자에 지정된 문자를 이용해서 브라우저에 출력해야 합니다.
다음 표는 각 특수 문자가 어떤 문자로 변환되는지 보여줍니다.
| 특수 문자 | 변환된 문자 |
| < | < |
| > | > |
| & | & |
| ' | ' |
| " | " |
| ... | ... |
간단히 특수 문자 사용 예를 실습해 보겠습니다.
1. escapeXml.jsp를 다음과 같이 작성합니다. <c:out> 태그의 escapeXml 속성을 이용해 변환된 문자를 특수 문자로 변환합니다.
<%@ page language="java" contentType="text/html; charset=UTF-8"
import="java.io.*"
pageEncoding="UTF-8"
isELIgnored="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
request.setCharacterEncoding("UTF-8");
%>
<!DOCTYPE html>
<html>
<head>
<meta charset=”UTF-8">
<title>escapeXml 실습하기</title>
</head>
<body>
<h2>escapeXml 변환하기</h2>
<h2>
<pre>
<c:out value="<" escapeXml="true" />
<c:out value="<" escapeXml="false" />
<c:out value=">" escapeXml="true" />
<c:out value=">" escapeXml="false" />
<c:out value="&" escapeXml="true" />
<c:out value="&" escapeXml="false" />
<c:out value="'" escapeXml="true" />
<c:out value="'" escapeXml="false" />
<c:out value=""" escapeXml="true" />
<c:out value=""" escapeXml="false" />
</pre>
</h2>
</body>
</html>
2. http:localhost:8080/pro14/test03/escapeXml.jsp로 요청하여 결과를 확인합니다.

지금까지 일반적으로 많이 사용하는 코어 라이브러리에 대해 알아봤습니다. 그 외 <c:import> 태그는 <jsp:include>와 같은 기능을 수행합니다.
'프로그래밍 언어 > 자바 웹' 카테고리의 다른 글
| 학점 변환기 예제 (1) | 2026.03.09 |
|---|---|
| Core 태그 라이브러리 실습 예제 (0) | 2026.03.06 |
| <c:redirect> 태그를 이용한 실습 (0) | 2026.02.28 |
| <c:url> 태그를 이용한 실습 (0) | 2026.02.25 |
| <c:forEach> 태그를 이용한 실습 (0) | 2026.02.22 |