아줌마의 국비학원생활

[61일차][jsp] 표현언어( EL)

citygray 2023. 7. 13. 15:35

표현언어( EL)

- JSP에서 브라우저의 출력은 주로 표현식 태그를 이용

- 자바변수 출력이 아닌 속성출

<%=  request.getParameter("userid") %>

                          ↓ 

             ${ param.userid }

            ${ param['userid'] }

            ${ param["userid"] }

 

User.class

package expressionLanguage;

public class User {
	private int unum;
	private String uname;
	private String uid;
	private Address address;
	
	public Address getAddress() {
		return address;
	}
	public void setAddress(Address address) {
		this.address = address;
	}
	public int getUnum() {
		return unum;
	}
	public void setUnum(int unum) {
		this.unum = unum;
	}
	public String getUname() {
		return uname;
	}
	public void setUname(String uname) {
		this.uname = uname;
	}
	public String getUid() {
		return uid;
	}
	public void setUid(String uid) {
		this.uid = uid;
	}
	
}

Address.class

package expressionLanguage;

public class Address {
	private String city;
	private String zipcode;
	
	public String getCity() {
		return city;
	}
	public void setCity(String city) {
		this.city = city;
	}
	public String getZipcode() {
		return zipcode;
	}
	public void setZipcode(String zipcode) {
		this.zipcode = zipcode;
	}

}

userEL.jsp

<%@page import="expressionLanguage.Address"%>
<%@page import="expressionLanguage.User"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1" />
<meta name="viewport"
	content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no" />
<title>Insert title here</title>
</head>
<body>
	<%
		User user = new User();
		user.setUid("hongid");
		user.setUnum(1);
		user.setUname("홍길동");
	
		Address ad = new Address();
		ad.setCity("서울");
		ad.setZipcode("150-100");
		
		user.setAddress(ad);
		
		//out.print(user.getUname());
		//out.print(user.getAddress().getCity());
	%>
	<ul>
		<li><%=user.getUnum()%></li>
		<li><%=user.getUid()%></li>
		<li><%=user.getUname()%></li>
		<li><%=user.getAddress().getCity()%></li>
		<li><%=user.getAddress().getZipcode()%></li>
	</ul>
</body>
</html>

 

 

영역객체와 속성

공유되는 데이터를 속성(Attribute)이라 하고 속성을 공유할 수 있는 유효범위를 영역(Scope)라고 한다.

JSP에서 정의하는 영역은 page, request, session, application으로 구성되며

이들 영역은 각각 pageContext, request, session, application 내장 객체를 통해서 속성을 설정하거나 읽어 들일 수 있다. 

 

 
 

배열, 맵 데이터 연동

//배열인 경우
${ myList[0] } 

//맵인 경우
${ myMap["name"] }

 

'아줌마의 국비학원생활' 카테고리의 다른 글

[63일차] MVC 패턴  (0) 2023.07.17
[62일차] JSTL  (0) 2023.07.14
[60일차][jsp] 액션태그  (0) 2023.07.12
[57일차] JSP  (0) 2023.07.07
[56일차] 서블릿 포워드, 바인딩  (0) 2023.07.06