표현식 또는 액션태그를 대신해서 값을 간략하게 표현하는 언어이다.
elEX1.jsp )
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <!DOCTYPE html> <html> <head> <meta charset="EUC-KR"> <title>Insert title here</title> </head> <body> <H1>표현식</H1> <hr> <%= 1 + 1 %> <br> <%= 1 != 2 %> <br> <%= (1<2) ? true : false %> <br> <%= (2>1)&&(1>2) %> <br> <hr> <h1>EL</h1> <hr> ${ 1 + 1 } <br> ${ 1 != 2 } <br> ${ (1<2) ? true : false } <br> ${ (2>1)&&(1>2) } <br> <hr> </body> </html> | cs |
결과)
com.jsplec.ex.Member.java )
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | package com.jsplec.ex; public class Member { private String id; private String pw; private String name; private String email; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getPw() { return pw; } public void setPw(String pw) { this.pw = pw; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } } | cs |
elEX2.jsp )
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <jsp:useBean id="member" class="com.jsplec.ex.Member"/> <jsp:setProperty property="id" name="member" value="admin"/> <jsp:setProperty property="pw" name="member" value="1234"/> <jsp:setProperty property="name" name="member" value="관리자"/> <jsp:setProperty property="email" name="member" value="admin@gmail.com"/> <!DOCTYPE html> <html> <head> <meta charset="EUC-KR"> <title>Insert title here</title> </head> <body> <H1>액션 태그</H1> <hr> 아이디 : <jsp:getProperty property="id" name="member"/> <br> 비밀번호 : <jsp:getProperty property="pw" name="member"/> <br> 이름 : <jsp:getProperty property="name" name="member"/> <br> 이메일 : <jsp:getProperty property="email" name="member"/> <br> <hr> <h1>EL</h1> <hr> 아이디 : ${ member.id } <br> 비밀번호 : ${ member.pw } <br> 이름 : ${ member.name } <br> 이메일 : ${ member.email } <br> <hr> </body> </html> | cs |
결과 )
param : 요청 파라미터를 참조하는 객체.
paramValues : 요청 파라미터(배열)를 참조하는 객체.
initParam : 초기화 파라미터를 참조하는 객체.
cookie : cookie 객체를 참조한는 객체.
예제)
login.jsp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <% request.setCharacterEncoding("EUC-KR"); %> <!DOCTYPE html> <html> <head> <meta charset="EUC-KR"> <title>Login Page</title> </head> <body> <h1>LOGIN</h1> <hr> <form action="loginOK.jsp" method="post"> <input type="text" name="id" placeholder="아이디를 입력해주세요."><br/> <input type="text" name="pw" placeholder="비밀번호를 입력해주세요."><br/> <input type="submit" value="로그인"> </form> <% // 아래로 내려갈 수 록 범위가 좁다 application.setAttribute("application_name", "application_value"); session.setAttribute("session_name", "session_value"); request.setAttribute("request_name", "request_value"); pageContext.setAttribute("page_name", "page_value"); %> </body> </html> | cs |
loginOK.jsp
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <!DOCTYPE html> <html> <head> <meta charset="EUC-KR"> <title>Login Result Page</title> </head> <body> <h1>Login Result 표현식</h1> <br> <% String id = request.getParameter("id"); String pw = request.getParameter("pw"); %> 아이디 : <%= id %> <br/> 비밀번호 : <%= pw %> <br/> <hr> <h1>Login Result EL</h1> <hr> <span>EL version1</span><br> 아이디 : ${ param.id } <br/> 비밀번호 : ${ param.pw } <br/><br> <span>EL version1</span><br> 아이디 : ${ param["id"] } <br/> 비밀번호 : ${ param["pw"] } <br/> <hr> <h1>EL Scope</h1> <hr> applicationScope : ${ applicationScope_application.name } <br/> sessionScope : ${ sessionScope.session_name } <br/> requestScope : ${ requestScope.request_name } <br/> pageScope : ${ pageScope.session_name } <br/> <hr> <h1>context-param 초기화 파라미터</h1> <span>web.xml 파일에 미리 initParam 값을 정해줘야 된다.</span> <hr> ${ initParam.context_id } <br/> ${ initParam.context_pw } <br/> ${ initParam.context_name } <br/> <hr> </body> </html> | cs |
web.xml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> <display-name>elTest</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <context-param> <param-name>context_id</param-name> <param-value>admin</param-value> </context-param> <context-param> <param-name>context_pw</param-name> <param-value>1234</param-value> </context-param> <context-param> <param-name>context_name</param-name> <param-value>관리자</param-value> </context-param> </web-app> | cs |
결과)
EL 표기법을 사용할 필요는 없지만 사용할 시 코드를 간략하게 하여 줄일 수 있으며 가독성을 높일 수 있습니다.
url-pattern (디렉토리 패턴, 확장자 패턴) (0) | 2018.10.26 |
---|---|
JSTL 개요 및 설치, Core 사용법 (0) | 2018.10.26 |
파일 업로드 라이브러리(cos.jar) - multipart/form-data (0) | 2018.10.25 |
DAO, DTO, PreparedStatement, DBCP를 이용한 간단한 회원인증 (0) | 2018.10.25 |
간단한 회원가입 및 회원정보 수정 (0) | 2018.10.24 |
댓글 영역