EL

2.List, Array 표현

Jungsoomin :) 2020. 7. 14. 11:21

EL 에서는 null 값을 출력하지 않는다. 값이 나오지 않으면 null 을 고려하거나 로직을 고려해야할 듯 싶다.

${myList}를 하게되면 page->request->session->application 순으로 키값을 찾게되고 값을 찾아 그값을 쓴다.

 

각 인덱스의 값을 알고 싶다면 [인덱스] 를 사용한다. 문자열리터럴로 ["1"] 같은 값이나 [문자변수] 또한 가능하다.

 

즉 ${myList[1]}  ${myList["1"]}  ${myList[myNum]} 이 가능하다.

<body>
	<%
		List<String > list = new ArrayList<>();
	list.add("java");
	list.add("html");
	list.add("Css");
	list.add(null);
	
	request.setAttribute("myList", list);
	pageContext.setAttribute("myNum", "2");
	%>
	
	<h1>List 컬렉션의 사용</h1>
	<h3>${myList[0]} , ${myList[1]}, ${myList[2]}</h3>
	<hr />
	
	
	<h3>값이 null이라면 ${ myList[3]}  출력하지 않는다.</h3>
	<%= ((List<String>)(request.getAttribute("myList"))).get(3) %>
	<hr />
	
	<h4>인덱스에 리터럴을 줘서도 사용가능하다 myList[myNum] : >>>>>  ${myList[myNum]}</h4>
	
</body>

배열도 List와 똑같이 선언하고 똑같이 가져온다.

<body>
	<%
	String[] arr = {"java","css","jquery"};
	request.setAttribute("myArr", arr);
	%>
	
	<h1>EL 을통한 배열의 출력</h1>
	<br />
	
	<h2>myArr[0]:   >>>>   ${myArr[0] }</h2>
	<h2>myArr['1']:   >>>>   ${myArr['1'] }</h2>
	<h2>myArr[2]:   >>>>   ${myArr[2] }</h2>
	
	<hr />
	<ul>
		<%
		for(int i =0; i<arr.length; i++){
			pageContext.setAttribute("i", i);
		%>
		<li>${myArr[i] }</li>
		
		<%
		}
		%>
		</ul>
</body>

'EL' 카테고리의 다른 글

5.EL에서의 논리연산자와 비교연산자  (0) 2020.07.14
4.EL에서의 비교연산자  (0) 2020.07.14
3.파라미터, 헤더, 쿠키, 전역 변수  (0) 2020.07.14
2.VO 객체 = ? Bean 객체 도출  (0) 2020.07.14
1.Map  (0) 2020.07.14