-
[헤드퍼스트 Servlet&JSP] 7-3 EL Expression Language 소개개발입문/Servlet&JSP 2017. 2. 19. 11:15
이때까지 JSP: HTML 안에 Java 코드 삽입하는 태그들을 살펴보았습니다.
JSP Elements
http://haloaround.tistory.com/84
JSP to Servlet
http://haloaround.tistory.com/85
하지만 2가지 문제가 있습니다.
1) 웹 페이지 디자이너가 자바를 알 필요까지는 없지 않을까요?
2) JSP 안에 있는 자바 코드는 유지보수하기가 까다롭습니다.
그래서 EL 이 등장했습니다!!!
(어째.. 헤드퍼스트 말투를 따라가는 듯한 느낌이..)
학습목표JSP 는 서블릿이 됩니다.
템플릿 텍스트 (HTML)
스크립팅 요소 (Scripting Element)
주석, 지시자, 선언문, 스크립틀릿, 표현식
표준 액션 및 커스텀 액션
표현식 언어 EL (Expression Language)
JSP 가 Servlet이 되기까지
EL 표현식
JSP 요소 대신 EL
EL Expression Language가 JSP 2.0 Spec 부터 JSP 요솔 공식적으로 포함되었습니다! 스크립틀릿이나 표현식으로 지금까지 했던 작업을 EL을 가지고서는 아주 간단하게 할 수 있습니다. JSP에 실제 자바 코딩을 하지 않고도, 간단한 태그 만으로 자바 메소드를 실행시킬 수 있는 방법! EL! 예를 들어 자바 빈, 정적인 메소드를 가진 클래스, 태그 핸들러 등등
EL 표현식
${applicationScope.mail}
이 자바코딩과 동일//<%= application.getAttribute("mail") %>
JSP 작성방식 선택
Elements vs. ELJSP 를 작성하는 방식이 크게 2개가 되었습니다. Elements vs. EL
한가지만 선택해야 합니다.
- 이제 JSP 에 자바코딩(스크립팅 항목) 을 사용하지 못하도록 막으려면?
- 또는 EL 을 사용하지 못하도록 막는다면?
DD 스크립팅 항목 제외
<web-app>
...
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<scripting-invalid>true</scripting-invalid> (default false)
//<el-ignored>true</el-ignored>
</jsp-property-group>
</jsp-config>
...
</web-app>
EL 제외 (default Enable)
page 지시자 속성 <%@ page isELIgnored="true" %> (default false)
DD <el-ignored>true</el-ignored>
액션 Actions
표준액션
<jsp:include page="wickedFooter.jsp" />
기타액션
<c:set var="rate" value="32" />
EL 과 Action은 다음 장에서 더 자세히~ 다룬다고 한다.
사실 JSP Elements 가 더 간단하고. JSP 구동방식을 설명하기 편해서 JSP Elements 를 먼저 소개했을지도. (또는 역사적으로 JSP Elements 가 먼저여서 일 수도 있고~)
드디어 크롬 개발자도구 에서 확인하는 HTML 속 ${...} 를 이해할 수 있게 된다. :3
'개발입문 > Servlet&JSP' 카테고리의 다른 글
[헤드퍼스트 Servlet&Jsp] 8-3. EL에서 함수 사용 (0) 2017.02.26 [헤드퍼스트 Servlet&Jsp] 8-2. EL로 파라미터 불러오기 (0) 2017.02.26 [헤드퍼스트 Servlet&JSP] 7-2. JSP LifeCycle 및 내장객체 사용 (0) 2017.02.18 [헤드퍼스트 Servlet&JSP] 7-1. JSP 요소 (0) 2017.02.18 Request 속성과 Request 디스패칭 (0) 2017.02.16