표현 언어란?
값을 표현하는 데 사용되는 스크립트 언어로 JSP의 기본 문법을 보완하는 역할을 함
제공 기능?
- JSP의 스코프에 맞는 속성 사용
- 집합 객체에 대한 접근 방법 제공
- 수치 연산, 관계 연산, 논리 연산자 제공
- 자바 클래스 메소드 호출 기능 제공
- 표현언어만의 기본 객체 제공
표현 방법?
${expr }
기본 객체?
데이터 타입?
- boolean : true/false
- 정수 : 0-9로 이루어져 있고, 음의 경우 -가 붙음
- 실수 : 0-9로 이루어져 있고, 소수점 사용 가능 및 3.24e3 처럼 지수형으로 표현 가능
- 문자열 : 따옴표로 둘러싼 문자열.
- 널 : null
객체 접근 규칙?
${<표현1>.<표현2>}
- 표현1이나 표현 2가 null이면 null을 반환한다.
- 표현1이 Map일 경우 표현2를 key로한 값을 반환한다.
- 표현1이 List나 배열이면 표현2가 정수일 경우 해당 정수 번째 index에 해당하는 값을 반환한다.
- 만약 정수가 아닐 경우에는 오류가 발생한다.
- 표현1이 객체일 경우는 표현2에 해당하는 getter메소드에 해당하는 메소드를 호출한 결과를 반환한다.
표현 언어 비활성화 방법 : <%@ page isELIgnored = "true" %>
실습
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<%
pageContext.setAttribute("p1", "page scope value");
request.setAttribute("r1", "request scope value");
session.setAttribute("s1", "session scope value");
application.setAttribute("a1", "application scope value");
%>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
pageContext.getAttribute("p1") : <%=pageContext.getAttribute("p1") %> <br>
pageContext.getAttribute("p1") : ${pageScope.p1}<br>
request.getAttribute("r1") : ${requestScope.r1 }<br>
session.getAttribute("s1") : ${sessionScope.s1 }<br>
application.getAttribute("a1") : ${applicationScope.a1 }<br>
<!-- 사용되는 변수명이 겹치지 않는다면 스코프 명시하지 않고 바로 사용 가능 -->
<br><br>
pageContext.getAttribute("p1") : ${p1 }<br>
request.getAttribute("r1") : ${r1 }<br>
session.getAttribute("s1") : ${s1 }<br>
application.getAttribute("a1") : ${a1 }<br>
</body>
</html>
실행 결과
출처
https://www.boostcourse.org/web316/lecture/254288?isDesc=false
'Web' 카테고리의 다른 글
Scope (0) | 2021.08.23 |
---|---|
Servlet , JSP 연동하기 (forward) (0) | 2021.08.19 |
Redirect & Forward (0) | 2021.08.08 |
JSP 내장 객체 (0) | 2021.08.02 |
[eclipse] 자바 웹 어플리케이션 생성 (+ Finish버튼 비활성화 시) (0) | 2021.08.01 |