주요내용 : Core Tag Library(C:if c:choose c:forEach c:url), 다국어 Tag Library
<%@ page language="java" contentType="text/html; charset=UTF-8"
import = "java.util.*, sec01.ex02.MemberBean"
pageEncoding="UTF-8"
isELIgnored="false"
%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
request.setCharacterEncoding("UTF-8");
%>
<c:set var="id" value="hong" scope="page"/>
<c:set var="pwd" value="1234" scope="page"/>
<c:set var="name" value="${'홍길동'}" scope="page"/>
<c:set var="age" value="${22}" scope="page"/>
<c:set var="height" value="${177}" scope="page"/>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>조건문 실습</title>
</head>
<body>
<c:if test="${true}">
<h1>항상 참입니다</h1>
</c:if>
<c:if test="${11==11}">
<h1>두 값은 같습니다.</h1>
</c:if>
<c:if test="${11!=31}">
<h1>두 값은 같지 않습니다.</h1>
</c:if>
<c:if test="${(id=='hong') && (name=='홍길동')}">
<!--String이므로 ' ' 으로 비교 -->
<!--id와 name이 선언되어있으므로 EL태그에서 사용가능함. -->
<h1>아이디는 ${id}이고, 이름은 ${name}입니다.</h1>
</c:if>
<c:if test="${age==22}"> <!-- int이르모 바로 비교 -->
<h1>${name}의 나이는 ${age}살입니다.</h1>
</c:if>
<c:if test="${height>160}">
<h1>${name}의 키는 160보다 큽니다.</h1>
</c:if>
</body>
</html>
================
<%@ page language="java" contentType="text/html; charset=UTF-8"
import = "java.util.*, sec01.ex02.MemberBean"
pageEncoding="UTF-8"
isELIgnored="false"
%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
request.setCharacterEncoding("UTF-8");
%>
<c:set var="id" value="hong" scope="page"/>
<c:set var="pwd" value="1234" scope="page"/>
<c:set var="name" value="${'홍길동'}" scope="page"/> <!-- 주석처리시 이름을 입력하세요 라는 오류 메세지 출력 -->
<c:set var="age" value="${22}" scope="page"/>
<c:set var="height" value="${177}" scope="page"/>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>조건문 실습</title>
</head>
<body>
<table border="1" align="center">
<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>
<td width="7%"><b>키</b></td>
</tr>
<c:choose>
<%-- <c:when test="${name==null}"> --%> <!-- JSP의 주석처리 기호 -->
<c:when test="${empty name}">
<tr align="center">
<td colspan=5> 이름을 입력하세요!!</td> <!-- td가 아래 5개있으므로 5개로 열 병합 -->
</tr>
</c:when>
<c:otherwise> // name이 정상적이면 회원정보를 출력.
<tr align=center>
<td>${id}</td>
<td>${pwd}</td>
<td>${name}</td>
<td>${age}</td>
<td>${height}</td>
</tr>
</c:otherwise>
</c:choose>
</table>
</body>
</html>
=======================
<%@ page language="java" contentType="text/html; charset=UTF-8"
import = "java.util.*, sec01.ex02.MemberBean"
pageEncoding="UTF-8"
isELIgnored="false"
%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
List dataList = new ArrayList();
dataList.add("hello");
dataList.add("world");
dataList.add("안녕하세요!!");
%>
<c:set var="list" value="<%=dataList %>" />
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>반복문 실습</title>
</head>
<body>
// <c:forEach var="변수이름" items="반복할객체이름" begin="시작값" end="마지막값"
// step="증가값" varStatus="반복상태변수이름">
<c:forEach var="i" begin="1" end="10" step="1" varStatus="loop">
i=${i} 반복횟수: ${loop.count} <br>
</c:forEach>
<br>
<c:forEach var="i" begin="1" end="10" step="2">
5 * ${i} = ${5*i}<br>
</c:forEach>
<br>
<!-- c:set에서 정의한 data를 가져옴. list에 해당하는 것이 객체이면 점을 이용해 가져옴. -->
<c:forEach var="data" items="${list}" >
${data } <br>
</c:forEach>
<br>
<c:set var="fruits" value="사과, 파인애플, 바나나, 망고, 귤" />
<c:forTokens var="token" items="${fruits}" delims=",">
${token}<br>
</c:forTokens>
</body>
</html>
========================
<%@ page language="java" contentType="text/html; charset=UTF-8"
import = "java.util.*, sec01.ex02.MemberBean"
pageEncoding="UTF-8"
isELIgnored="false"
%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
request.setCharacterEncoding("UTF-8");
List membersList = new ArrayList();
MemberBean m1 = new MemberBean("son", "1234", "손흥민", "son@test.com");
MemberBean m2 = new MemberBean("ki", "4321", "기성용", "ki@test.com");
MemberBean m3 = new MemberBean("park", "1212", "박지성", "park@test.com");
membersList.add(m1);
membersList.add(m2);
membersList.add(m3);
%>
<c:set var="membersList" value="<%=membersList %>" />
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>회원 정보 출력창</title>
</head>
<body>
<table border="1" align="center">
<tr align=center bgcolor="lightgreen">
<td width="7%"><b>아이디</b></td>
<td width="7%"><b>비밀번호</b></td>
<td width="5%"><b>이름</b></td>
<td width="5%"><b>이메일</b></td>
</tr>
<c:forEach var="i" begin="0" end="2" step="1">
<tr align="center">
<td>${membersList[i].id}</td>
<td>${membersList[i].pwd}</td>
<td>${membersList[i].name}</td>
<td>${membersList[i].email}</td>
</tr>
</c:forEach>
</table>
</body>
</html>
============================
<%@ page language="java" contentType="text/html; charset=UTF-8"
import = "java.util.*, sec01.ex02.MemberBean"
pageEncoding="UTF-8"
isELIgnored="false"
%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
request.setCharacterEncoding("UTF-8");
List membersList = new ArrayList();
MemberBean m1 = new MemberBean("son", "1234", "손흥민", "son@test.com");
MemberBean m2 = new MemberBean("ki", "4321", "기성용", "ki@test.com");
MemberBean m3 = new MemberBean("park", "1212", "박지성", "park@test.com");
membersList.add(m1);
membersList.add(m2);
membersList.add(m3);
%>
<c:set var="membersList" value="<%=membersList %>" />
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>회원 정보 출력창</title>
</head>
<body>
<table border="1" align="center">
<tr align=center bgcolor="lightgreen">
<td width="7%"><b>아이디</b></td>
<td width="7%"><b>비밀번호</b></td>
<td width="5%"><b>이름</b></td>
<td width="5%"><b>이메일</b></td>
</tr>
<!-- item 속성에 membersList를 할당한 후 실행하여 자동으로 var의 member에 membersList의 MemberBean 객체가 차례대로 할당
member7 보단 member8 방법이 좋음.-->
<c:forEach var="member" items="${membersList}">
<tr align="center">
<td>${member.id}</td>
<td>${member.pwd}</td>
<td>${member.name}</td>
<td>${member.email}</td>
</tr>
</c:forEach>
</table>
</body>
</html>
============================
<%@ page language="java" contentType="text/html; charset=UTF-8"
import = "java.util.*, sec01.ex02.MemberBean"
pageEncoding="UTF-8"
isELIgnored="false"
%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<c:set var="contextPath" value="${pageContext.request.contextPath}"/>
<c:url var="url1" value="/test01/member1.jsp">
<c:param name="id" value="hong"/>
<c:param name="pwd" value="1234"/>
<c:param name="name" value="홍길동"/>
<c:param name="email" value="hong@test.com"/>
</c:url>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>c:url 태그 실습</title>
</head>
<body>
<%-- <a href='${contextPath}/text01/member1.jsp'>회원정보출력</a> --%>
<a href='${url1}'>회원정보출력</a>
</body>
</html>
=============================
<%@ 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>catch 태그</title>
</head>
<body>
<c:catch var="ex">
name 파라미터의 값 = <%=request.getParameter("name") %><br>
<%if(request.getParameter("name").equals("test")){ %>
${param.name }은 test입니다.
<%} %>
</c:catch>
<p>
<c:if test="${ex!=null}">
익센셥이 발생하였습니다.<br>
${ex}
</c:if>
</body>
</html>
=================================
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>입력창</title>
</head>
<body>
<form action="result2.jsp" method="post">
아이디 : <input type="text" name="userID"><br>
비밀번호 : <input type="password" name="userPw"><br>
<input type="submit" value="로그인">
<input type="reset" value="다시입력">
</form>
</body>
</html>
=============================
<%@ 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>
// -- 이중조건문 구현 --
<c:if test="${empty param.userID}">
아이디를 입력하세요.<br>
<a href="login.jsp">로그인 창</a>
</c:if>
<c:if test="${not empty param.userID}">
<c:if test="${param.userID=='admin'}">
<h1>관리자로 로그인 했습니다.</h1>
<form>
<input type=button value="회원정보 삭제하기"/>
<input type=button value="회원정보 수정하기"/>
</form>
</c:if>
<c:if test="${param.userID!='admin'}">
<h1>환영합니다.
<c:out value="${param.userID}"/>님!!!</h1>
</c:if>
</c:if>
</body>
</html>
==============================
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ 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>
<h1>출력할 구구단의 수를 지정해 주세요.</h1>
<form method=get action='guguResult2.jsp'>
출력할 구구단 : <input type=text name='dan' /><br>
<input type="submit" value="구구단 출력">
</form>
</body>
</html>
===========================
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ 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>
<c:set var="dan" value="${param.dan}"/>
<table border="1" width="800" align="center">
<tr align="center" bgcolor="lightgreen">
<td colspan="2">
<c:out value="${dan}"/> 단 출력</td>
</tr>
<c:forEach var="i" begin="1" end="9" step="1">
<c:if test="${i%2==0}"><!-- 짝수 -->
<tr align="center" bgcolor="#CCFF66">
</c:if>
<c:if test="${i%2==1}"><!-- 홀수 -->
<tr align="center" bgcolor="#CCCCFF">
</c:if>
<td width="400">
<c:out value="${dan}"/> * <c:out value="${i}"/>
</td>
<td width="400">
<c:out value="${i*dan}"/>
</tr>
</c:forEach>
</table>
</body>
</html>
===================================
mem.name = 홍길동
mem.address = 서울시 강남구
mem.job = 회계사
mem.name = \ud64d\uae38\ub3d9
mem.address = \uc11c\uc6b8\uc2dc \uac15\ub0a8\uad6c
mem.job = \ud68c\uacc4\uc0ac
mem.name = hong kil-dong
mem.address = kang-nam gu, seoul
mem.job = account
========================
<%@ page language="java" contentType="text/html; charset=UTF-8"
import="java.util.*"
pageEncoding="UTF-8"
isELIgnored="false"
%>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> // fmt태그를 이용하기 전에 반드시 설정해야함.
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%
request.setCharacterEncoding("UTF-8");
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JSTL 다국어 기능</title>
</head>
<body>
<fmt:setLocale value="en_US"/>
<%--<fmt:setLocale value="ko_KR"/>--%>
<h1>
회원정보<br><br>
<fmt:bundle basename="resource.member"> // resource 패키지 아래 member 프로퍼티 파일을 읽어옴.
이름:<fmt:message key="mem.name"/><br> // <fmt:message>태그의 key 속성에 프로퍼티 파일의 key를 지정하여 값을 출력.
주소:<fmt:message key="mem.address"/><br>
직업:<fmt:message key="mem.job"/><br>
</fmt:bundle>
</h1>
</body>
</html>