본문 바로가기

JSP/DAY 42 _ 23.10.19

EL

** EL: ${} 
- JSP 페이지에서 데이터를 표현하고 조작하는 데 사용되는 스크립트 언어
- JSP 페이지 내에서 Java 코드를 사용하지 않고도 변수의 값을 출력하고 조작하는 데 도움이 됨

1. 변수의 값을 출력: 
${변수명} 형식을 사용하여 변수의 값을 HTML 출력에 포함시킬 수 있습니다. 
예를 들어, ${user.name}는 "user" 객체의 "name" 속성을 출력합니다.

2. 수학 연산: 
EL을 사용하여 변수 간의 간단한 수학 연산을 수행할 수 있습니다. 
예를 들어, ${num1 + num2}는 "num1"과 "num2" 변수의 합계를 출력합니다.

3. 조건문과 반복문: 
EL을 사용하여 조건문 및 반복문을 만들어 JSP 페이지에서 데이터를 동적으로 처리할 수 있습니다. 
예를 들어, ${user.age > 18 ? '성인' : '미성년자'}는 "user" 객체의 "age" 속성을 검사하고 조건에 따라 다른 텍스트를 출력합니다.

4. 컬렉션 데이터 처리: 
EL은 컬렉션(배열, 리스트, 맵 등)의 요소에 접근하고 반복 처리할 수 있습니다. 
예를 들어, ${userList}가 사용자 목록을 나타내는 경우, ${user.name}과 같은 형태로 사용자 목록의 각 요소에 접근할 수 있습니다. 

 

	String str1 = "하이이이이";
	
	session.setAttribute("rrr", str1);	// --> 4가지 저장공간 모두에 넣을 수 있음.
	request.setAttribute("q1", str1);	// --> MAP계열이니까 key는 원래는 중복 허용X
	
	session.setAttribute("eee1", 333);	// --> Q. 하지만 저장공간을 다르게하면 다른 저장공간이니까 키가 같아도 될까?... el2로 ㄱㄱ
	request.setAttribute("eee1", 444);
	${q1 } <br>		<!-- 출력 : 하이이이이 -->
	${rrr } <br>	<!-- 출력 : 하이이이이 -->
	
	${eee1 } <br>	<!-- 출력 : 444 -->

EL의 life cycle

- EL은 라이프사이클이 가장 짧은 애들부터 돌아 (page -> request...)
- 있으면 출력, 없으면 올라가면서 확인하겠지
- 근데 어차피 다른 저장공간이라하더라도 같은 키로 저장할 일이 없을테니... 없어야하지... (키는 무조건 중복X)

	application.setAttribute("a", 1);
	session.setAttribute("a", 2);
	request.setAttribute("a", 3);
	pageContext.setAttribute("a", 4);
    
    // 이게 다 열려있으면 page가 선택되니까 출력 : 4

 <!-- ** 특정 저장공간의 키값 가져오기 -->
 ${requestScope.a}

'JSP > DAY 42 _ 23.10.19' 카테고리의 다른 글

@servlet(), filter, listener, XML 관련....  (1) 2023.10.19
Tag Library  (0) 2023.10.19