JSP
221202 JSTL 실습
주영재
2022. 12. 2. 17:13
jstl_quiz
<%@page import="java.util.ArrayList"%>
<%@page import="com.example.bean.User"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%
ArrayList<User> list = new ArrayList<>();
for(int i=1; i<=10;i++){
User user = new User();
user.setId(i+"");
user.setName("홍길동"+i);
user.setEmail(i+"@naver.com");
list.add(user);
}
//리퀘스트에 담는다
request.setAttribute("list", list);
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h3>list안의 값을 행별로 번호를 붙여서 반복문으로 출력</h3>
<c:set var="sum" value="0"/>
<c:forEach var="lists" items="${list}" varStatus="i">
<c:set var ="liststring" value="${lists.toString()}"/>
번호:${i.count }<br>
아이디:${lists.id} 이름:${lists.name} 이메일:${lists.email}<br>
${liststring}<br>
<hr>
<c:set var="sum" value="${sum+i.count }"/>
</c:forEach>
번호합:${sum }
</body>
</html>
<c:forEach var ="lists" items="${list}" varStatus="i"}>
이 구문에서 ${list}는 setAttribute값을 가져오고 있다. 자바코드의 ArrayList를 가져오려면 <%=list%>로 가져온다.
그러나 굳이 그럴 필요는 없다.
밑에 잘린 값은 번호합:55
tostring을 쓰기 위해 user에 tostring을 생성해주어야한다.