목차

기본 사용법

연산자

태그

#JAVA

#JSP

#JSTL

#LIBRARY

JSP EL (Expression Language)

2021년 11월 30일 03:39

21-thumbnail-image

이 글은 골든래빗 출판사로부터 책을 제공받아 작성했습니다.

http://www.yes24.com/Product/Goods/105016218

기본 사용법

${속성}

규칙

  • 액션 태그와 함께 사용 가능
  • JSTL과 함께 사용 가능
  • 스크립트 요소(선언부, 표현식, 스크립틀릿)에서는 사용 불가능

표현 방식

  • .(점)이나 사용
  • 속성명에 특수 기호나 한글이 포함되어 있을 때는 대괄호만 사용 가능
  • 대괄호를 사용할 때 속성명에는 "(큰따옴표)와 '(작은따옴표) 모두 사용 가능

예제

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>

	<%
	request.setAttribute("name", "홍채민");
	request.setAttribute("age", "19");
	request.setAttribute("gender", "female");
	%>

	<h5>name : ${name }</h5>
	<h5>age : ${age }</h5>
	<h5>gender : ${gender }</h5>

</body>
</html>

내가 따로 작성한 객체 예제

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>

	<%
	// 다른 패키지에서 작성한 객체
	Person person = new Person();
	
	person.setName("홍채민");
	person.setAge("19");
	person.setGender("female");
	
	request.setAttribute("person", person);
	%>

	<h5>name : ${person.name }</h5>
	<h5>age : ${person.age }</h5>
	<h5>gender : ${person.gender }</h5>

</body>
</html>

연산자

  • 산술연산자
    • +, -, * : 덧셈, 뺄셈, 곱셈
    • / 또는 div : 나눗셈
    • % 또는 mod: 나머지
  • 비교 연산자
    • 또는 gt : Greater Than (~보다 크다)

    • = 또는 ge : Greater than or Equal (~보다 크거나 같다)

    • < 또는 lt : Less Than (~보다 작다)
    • <= 또는 le : Less than or Equal(~보다 작거나 같다)
    • == 또는 eq : EQual(같다)
    • != 또는 ne : Not Equal (같지 않다, 즉 다르다)
  • 논리 연산자
    • && 또는 and : 논리 And
    • || 또는 or : 논리 Or
    • ! 또는 not : 논리 Not
  • empty 연산자
    • 값이 없을 때 true를 반환하는 연산자

예제

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>

	<%
	request.setAttribute("num", 1);
	request.setAttribute("num2", 2);
	request.setAttribute("num3", 3);
	request.setAttribute("boolean1", true);
	request.setAttribute("boolean2", false);
	request.setAttribute("str", null);
	%>

	<span>${num + num2 - num3 * num}</span>
	<span>${num / num2} ${num div num2}</span>
	<span>${num % num2} ${num mod num2}</span>
	
	<span>${num > num2} ${num gt num2}</span>
	<span>${num >= num2} ${num ge num2}</span>
	<span>${num < num2} ${num lt num2}</span>
	<span>${num <= num2} ${num le num2}</span>
	<span>${num == num2} ${num eq num2}</span>
	<span>${num != num2} ${num ne num2}</span>
	
	<span>${boolean1 && boolean2} ${boolean1 and boolean2}</span>
	<span>${boolean1 || boolean2} ${boolean1 or boolean2}</span>
	<span>${!boolean1} ${not boolean1}</span>
	
	<span>${empty str}</span>

</body>
</html>