1+ <%@page import =" java.util.ListResourceBundle" %>
2+ <%@page import =" java.util.ResourceBundle" %>
3+ <%@page import =" spms.vo.Member" %>
4+ <%@page import =" java.util.HashMap" %>
5+ <%@page import =" java.util.Map" %>
6+ <%@page import =" java.util.List" %>
7+ <%@page import =" java.util.LinkedList" %>
8+ <%@ page language =" java" contentType =" text/html; charset=UTF-8"
9+ pageEncoding =" UTF-8" %>
10+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd" >
11+ <html >
12+ <head >
13+ <meta http-equiv =" Content-Type" content =" text/html; charset=UTF-8" >
14+ <title >EL(Expression Language)</title >
15+ <style type =" text/css" >
16+ body {
17+ font-size : small ;
18+ }
19+ table {
20+ border : thin solid gray ;
21+ border-collapse : collapse ;
22+ }
23+
24+ td , th {
25+ border : thin dotted gray ;
26+ padding : 2px ;
27+ }
28+
29+ th {
30+ background-color : lightgray ;
31+ }
32+
33+ pre {
34+ font-size : 90% ;
35+ }
36+ </style >
37+ </head >
38+ <body >
39+ <p ><a href =" el01.jsp" >[이전]</a ><a href =" el03.jsp" >[다음]</a ></p >
40+ <h2 >EL - 값 꺼내기</h2 >
41+ <%
42+ // 데이터 준비
43+ pageContext. setAttribute(" scores" , new int []{90 ,80 ,70 ,100 });
44+
45+ List<String > nameList = new LinkedList<String > ();
46+ nameList. add(" 홍길동" );
47+ nameList. add(" 임꺽정" );
48+ nameList. add(" 일지매" );
49+ pageContext. setAttribute(" nameList" , nameList);
50+
51+ Map<String ,String > map = new HashMap<String ,String > ();
52+ map. put(" s01" , " 홍길동" );
53+ map. put(" s02" , " 임꺽정" );
54+ map. put(" s03" , " 일지매" );
55+ pageContext. setAttribute(" map" , map);
56+
57+ pageContext. setAttribute(" member" ,
58+ new Member ()
59+ .setNo(100 )
60+ .setName(" 홍길동" )
61+ .setEmail(" hong@test.com" ));
62+
63+ pageContext. setAttribute(" myRB" ,
64+ ResourceBundle . getBundle(" MyResourceBundle" ));
65+ % >
66+ <table >
67+ <tr ><th >대상</th ><th >EL 코드</th ><th >설명</th ></tr >
68+
69+ <tr >
70+ <td >배열</td ><td >\${ myArray[1 ] } </td >
71+ <td >배열에서 해당 인덱스의 값을 꺼낸다.<br >
72+ <pre >
73+ [자바 코드]
74+ pageContext.setAttribute("scores", new int[]{90,80,70,100});
75+
76+ [실행 결과]
77+ \${ scores[2 ] } = ${ scores[2 ] }
78+ </pre >
79+ </td >
80+ </tr >
81+
82+ <tr >
83+ <td >리스트</td ><td >\${ myList[2 ] } </td >
84+ <td >List 객체에서 인덱스로 지정된 항목의 값을 꺼낸다.
85+ <pre >
86+ [자바 코드]
87+ List nameList = new LinkedList();
88+ nameList.add("홍길동");
89+ nameList.add("임꺽정");
90+ nameList.add("일지매");
91+ pageContext.setAttribute("nameList", nameList);
92+
93+ [실행 결과]
94+ \${ nameList[1 ] } = ${ nameList[1 ] }
95+ </pre >
96+ </td >
97+ </tr >
98+
99+ <tr >
100+ <td >맵</td ><td >\${ myMap. keyName } </td >
101+ <td >Map 객체에서 키에 해당하는 값을 꺼낸다.
102+ <pre >
103+ [자바 코드]
104+ Map map = new HashMap();
105+ map.put("s01", "홍길동");
106+ map.put("s02", "임꺽정");
107+ map.put("s03", "일지매");
108+ pageContext.setAttribute("map", map);
109+
110+ [실행 결과]
111+ \${ map. s02 } = ${ map. s02 }
112+ </pre >
113+ </td >
114+ </tr >
115+
116+ <tr >
117+ <td >자바빈</td ><td >\${ myObj. propName } </td >
118+ <td >자바 객체에서 프로퍼티의 값을 꺼낸다.
119+ <pre >
120+ [자바 코드]
121+ pageContext.setAttribute("member",
122+ new Member()
123+ .setNo(100)
124+ .setName("홍길동")
125+ .setEmail("hong@test.com"));
126+
127+ [실행 결과]
128+ \${ member. email } = ${ member. email }
129+ </pre >
130+ </td >
131+ </tr >
132+
133+ <tr >
134+ <td >리소스 번들</td ><td >\${ myRB. keyName } </td >
135+ <td >ResourceBundle 객체에서 키에 해당하는 값을 꺼낸다.
136+ <pre >
137+ [자바 코드]
138+ import java.util.ListResourceBundle;
139+ public class MyResourceBundle_ko_KR extends ListResourceBundle {
140+ public Object[][] getContents() {
141+ return new Object[][] {
142+ {"OK", "확인"},
143+ {"Cancel", "취소"},
144+ {"Reset", "재설정"},
145+ {"Submit", "제출"}
146+ };
147+ }
148+ }
149+
150+ pageContext.setAttribute("myRB",
151+ ResourceBundle.getBundle("MyResourceBundle"));
152+
153+ [실행 결과]
154+ \${ myRB. OK } = ${ myRB. OK }
155+ </pre >
156+ </td >
157+ </tr >
158+ </table >
159+
160+ <p ><a href =" el01.jsp" >[이전]</a ><a href =" el03.jsp" >[다음]</a ></p >
161+ </body >
162+ </html >
0 commit comments