JSP 표현언어 EL문법 (Expression Language)
JSP 표현언어 EL문법 (Expression Language)
- ${} 에 가로안에 표현이 적용되어 출력됨
- ${} 앞에 역슬래스\ 를 넣으면 변화하지 않고 문자열처럼 출력됨
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<ul>
<li>
<p>표현식 = 값</p>
</li>
<li>
<p>\${2+5} = ${2+5}</p>
</li>
<li>
<p>\${ 4 / 5 } = ${ 4 / 5 }</p>
</li>
<li>
<%// mod는 나누기 %>
<p>\${ 7 mod 5 } = ${ 7 mod 5 }</p>
</li>
<li>
<p>\${ 2 < 3 } = ${ 2 < 3 }</p>
</li>
<li>
<%// le는 앞자리가 적으면 true %>
<p>\${ 3.1 le 3.2 } = ${ 3.1 le 3.2 }</p>
</li>
<li>
<%// ?는 앞이 참이면 : 의 앞 아니면 :의 뒤 %>
<p>\${ (5 > 3) ? 5 : 3 } = ${ (5 > 3) ? 5 : 3 }</p>
</li>
</ul>
</body>
</html>
- 파라미터 값이 null 이어도 상관없음
- 파라미터 값의 파싱(Parsing - 문법을 잘 지켰는지 확인하는 것)을 신경 쓰지 않아도 됨
- 훨씬 간편해짐
- 사용 : param.가져올객체
<%
request.setCharacterEncoding("utf-8");
String name = "";
/* null 여부 체크 */
if(request.getParameter("name") != null) {
name = request.getParameter("name");
}
%>
<% // 위의 데이터가 생략될 수 있어 간편해짐 %>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
request.setCharacterEncoding("utf-8");
/* 자기 자신을 action태그에 넣는다
다시한번 페이지 실행 */%>
<form action="elEx3.jsp" method="post">
<ul>
<li>
<label for="name">이름</label>
<input type="text" id="name" name="name" value="${ param['name'] }">
<input type="submit" value="확인">
</li>
<li>
<p>이름은 : ${ param.name }</p>
</li>
</ul>
</form>
</body>
</html>
Scope(영역) : jsp, servlet 파일이 실행되면서, 데이터를 관리하는 범위
<%
request.setCharacterEncoding("utf-8");
// Scope(영역) : jsp, servlet 파일이 실행되면서, 데이터를 관리하는 범위
// pageScope < requestScope < sessionScope < applicationScope
pageContext.setAttribute("value", 1); // jsp 페이지가 실행중에만 사용가능(pageScope)
request.setAttribute("value", 2); // 요청을 받았을 때 사용가능(requestScope)
session.setAttribute("value", 3); // 세션 유효기간(소멸되기 전까지)(sessionScope)
application.setAttribute("value", 4); // 웹 어플리케이션이 종료되기전까지 사용가능(applicationScope)
%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
${ sessionScope.value } <% // 결과값 3 %>
</body>
</html>
댓글남기기