값을 간결하고 간편하게 출력할 수 있도록 해주는 언어. ${ } 의 형식으로 사용한다.
EL문에서는 연산자도 사용 가능하다.
| 연산자 | 연산부호 |
|---|---|
| / | div |
| % | mod |
| && | and |
| || | or |
| ! | not |
| > | gt |
| < | lt |
| >= | ge |
| <= | le |
| == | eq |
| != | ne |
empty 연산자
뒤에 올 값이 비어있으면 true, 아니라면 false
${empty data} <!-- data의 값이 없으면 true -->
${pageScope} : page Scope에 접근하기 위한 객체${requestScope} : request Scope에 접근하기 위한 객체${sessionScope} : session Scope에 접근하기 위한 객체${applicationScope} : application Scope에 접근하기 위한 객체${param} : 파라미터 값을 가져오기 위한 객체${header} : 헤더 값을 가져오기 위한 객체${cookie} : 쿠키 값을 가져오기 위한 객체${initParam} : JSP 초기 파라미터를 가져오기 위한 객체${pageContext} : pageContext 객체에 접근하기 위한 객체<!-- ..생략.. -->
<body>
<!-- ${2+3} : 5 출력. EL문 앞에 '\'을 써주면 연산되지 않고 문자 그대로 출력된다.-->
\${2+3} : ${2+3}
<!-- ${10>5} : true -->
\${10>5} : ${10>5}
</body>
<!-- ..생략.. -->
<body>
<%
// 여기서의 data는 변수명이 아니라 setAttribute() 할 때의 key값임을 주의하자
pageContext.setAttribute("data", "pageContext scope");
request.setAttribute("data", "request scope");
session.setAttribute("data", "session scope");
%>
<!-- pageContext scope -->
\${data} : ${data}
<!-- request scope -->
\${requestScope.data} : ${requestScope.data}
<!-- session scope -->
\${sessionScope.data} : ${sessionScope.data}
</body>
setAttribute 찾는 순서 : pageContext -> request -> session -> application
<!-- ..생략.. -->
<!--
어떤 페이지에서 form 으로 name="id"인 아이디 "id1234"와
name="pw"인 비밀번호 "pw1234"와
name="name" 인 이름 null 을 넘겨받았다고 가정
-->
<body>
<!-- 아이디 : id1234 -->
아이디 : ${param.id}
<!-- 비밀번호 : pw1234 -->
비밀번호 : ${param.pw}
<!-- 이름 : 이름없음 -->
<!-- 아래와 같이 삼항연산자도 사용 가능하다 -->
이름 : ${param.name != null?param.name:"이름없음"}
</body>