728x90
반응형
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<% request.setAttribute("person", "호동이"); %>
 
 
 
 
13_06_el01.jsp
13_06_el01.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<% request.setAttribute("person", "호동이"); %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<h2>기본객체를 사용한 EL</h2>
<fmt:requestEncoding value="utf-8"/>
<%-- <% String str=(String) request.getAttribute("person"); %> --%>
요청 URI: ${pageContext.request.requestURI}<br>
<%--pageContext : 한 페이지 내의 전반적인 정보를 읽어오거나 설정할 수 있는 객체	
해당 페이지가 클라이언트에게 서비스를 제공하는 동안 유효. (생략값 - default)--%>
request에 설정한 person속성: ${requestScope.person}<br><hr>
request에 설정한 person속성: ${person}<br><hr>
<%-- request에 설정한 person속성: <%= request.getAttribute("person")%><br><hr> --%>


<!-- param.code => request.getParameter("code") -->
<c:choose>
<c:when test="${param.code ne null}">
<p>code파라미터:${param.code}</p>
</c:when>
<c:otherwise>
<p>code 파라미터가 없습니다.<br>code파라미터를 전송해주세요.</p>
</c:otherwise>
</c:choose>
<form method="post">
<input type="text" name="code">
<input type="submit" value="전송">
</form>
</body>
</html>​

 

13_06_el02.jsp
13_06_el02.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="com.dao.Thermometer" %>
<!DOCTYPE html>
<%
	Thermometer thermometer = new Thermometer();
	request.setAttribute("t",thermometer);
%>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<h2>EL로 객체의 매서드 호출하기</h2>
	${t.setCelsius('서울',27.3)}
	서울 온도 : 섭씨 ${t.getCelsius('서울')}도 / 화씨 ${t.getFahrenheit('서울')}
	<br>
	정보: ${t.info}<br> 
	테스트: ${t.str}
	<!--getInfo(), setInfo(para) -->
</body>
</html>​
package com.dao;

import java.util.*;

public class Thermometer {

	private Map<String, Double> locationCelsiusMap = new HashMap<String, Double>();
													//공간할당, 주소값
	public void setCelsius(String location, Double value) {
		locationCelsiusMap.put(location, value);
		//Map은 순서가 없어서, put은 그 값이 없으면 덮어쓰기
	}
	
	public Double getCelsius(String location) {
		return locationCelsiusMap.get(location);	
	}
	
	public Double getFahrenheit(String location) {
		Double celsius = getCelsius(location);
		if(celsius == null) {return null;}
		return celsius.doubleValue() * 1.8 +32.0;
	}
	
	public String getStr() {return "getStr테스트";}
	public String getInfo() {return "온도계 변환기 1.1";}
}

 

 

13_06_el03.jsp
13_06_el03.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="util.FormatUtil, com.dao.Calculator" %>
<!DOCTYPE html>
<%
	request.setAttribute("price",12345);
%>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
가격은 <b>${FormatUtil.number(price,'#,##0')}</b>원 입니다.<br>
3의 3제곱승은 <b>${Calculator.process(3) }</b> 입니다.
</body>
</html>​
package com.dao;

public class Calculator {
	public static int process(int n) {
		return n*n*n;
	}
}
package util;

import java.text.DecimalFormat;

public class FormatUtil {
	public static String number(long number, String pattern) {
		DecimalFormat format = new DecimalFormat(pattern);
		return format.format(number);
	}
}
728x90
반응형

'[JAVA]' 카테고리의 다른 글

[JSP] session - removeAttribute, invalidate  (0) 2024.03.20
[JSP] session - getAttributeNames, getAttribute / cookies  (0) 2024.03.19
[JSP] form  (0) 2024.03.19
[JSP] jstl = date, time, both  (0) 2024.03.19
[JSP] JSTML fmt  (0) 2024.03.19

+ Recent posts