JSTL 사용하기 위한 세팅
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
붙여 넣기 합니다~
<c:set var="a" value="aa" scope="session" />
taglib 에 prefix 로 c가 있습니다.
태그에는 c:set 이 있으면 느낌이 올겁니다
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:set var="a" value="aa" scope="session" />
<a href="jstl2.jsp">연결</a>
</body>
String a = "aa" 가 되었습니다.
연결 링크를 누르면
<body>
${a}
</body>
jstl2.jsp 로 가서 aa 가 출력됩니다
밑에 로직은 c:choose
<c:choose>
<c:when test="${param.id=='aa'}">
aaaaa
</c:when>
<c:when test="${param.id=='bb'}">
실행문2<br>
</c:when>
<c:otherwise>
실행문3<br>
</c:otherwise>
</c:choose>
if test id 가 aa 라면 aaaaa 출력
if test id 가 bb 라면 실행문2 출력
그외 test id 에 값을 준다면 실행문 3 출력
<c:choose>
<c:when test="${param.num <0 }">
음수
</c:when>
<c:when test="${param.num>0 }">
양수
</c:when>
<c:otherwise>
제로
</c:otherwise>
</c:choose>
url 에 num= 양수, 음수 , 0 주는거에 따라 값이 출력됩니다
<c:if test="${param.id=='aa'}" var="v1" scope="request">
실행문1<br>
</c:if>
${requestScope.v1}
</body>
if jstl 태그는 test 가 참이면 v1 에 true 또는 false가 반환됩니다.
<%
ArrayList<Integer> list=new ArrayList<Integer>();
list.add(100);list.add(200);list.add(300);
%>
<c:forEach items="<%=list%>" begin ="2" step="1" var="n">
${n}<br>
</c:forEach>
<hr>
<c:forEach begin="1" end="10" step="2" var="n">
${n}<br>
</c:forEach>
"<%=list%>" 에 begin = "0" 이 라면 100 200 300 값이 출력됩니다.
<c:forEch items="<%=list%>"
는 Collection 객체를 넣습니다 그 객체를 변수 n에 담습니다.
<%
List<MemberBean> list = MemberDAOImpl.getInstance().selectMemberList();
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<c:forEach items="<%=list%>" var="member">
${member.id }<br/>
</c:forEach>
DB에 있는 아이디를 for 확장문으로 출력해보겠습니다.
모든 정보를 list 객체에 담았습니다. <c:forEach items>에 넣고 변수 member 라 이름지었습니다.
이제 member.getId() 라고 적힌 것과 같습니다