본문 바로가기

Java/java 기초

el tag 정리

반응형
<%@page import="java.util.HashMap"%>
<%@page import="java.util.ArrayList"%>
<%@page import="java.util.List"%>
<%@page import="dto.MemberDto"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
	<%-- 
	JSP : html, JavaScript, Css, Java
	
	<%! 선언부(class, function, variable(global)) %>
	<% 코드부 %>
	<%= value %>
	:front end에서 Java를 사용하지 않기 위해서
	
	------------------
	EL tag -> value		<-- Java
	Core tag -> 제어문
	------------------
	jsp
	
	Expression Language
	표현		언어
	
	JSTL(Java server page Standard Tag Language)
	
 --%>

	<%
		String str = "hello";
		request.setAttribute("_str", str);
	%>

	<%
		String s = (String) request.getAttribute("_str");
	%>

	<%
		out.println("s = " + s);
	%>
	<br>
	<br> s =
	<%=s%>
	<br>
	<br>

	<!-- 앞에있는 문자열을 가져오는것 -->
	s = ${ _str }
	<br>
	<Br>
	<%='값'%>
	<br> ${ '값' }
	<br>

	<%=2 + 3%>
	<br>
	<br> ${ 3>2?100:200 }
	<br>
	<br>
	<!-- 어트리뷰트로 지정해야 가능 -->

	<%
		request.setAttribute("data", "안녕하세요");
	%>

	${ data }

	<br>
	<br> Object가 할당되어있는지?
	<br> data = ${ empty data }
	<!--  true/false -->

	<br> data = ${not empty data }
	<br>
	<br> 1 < 9 : ${ 1 < 9 }
	<!-- 판별식 true/false-->
	<br> 2 + 3 : ${ 2 + 3 }
	<!-- 연산식 variable-->
	<br>
	<br>

	<%
		Integer a, b;
		a = 10;
		b = 3;
		// EL태그에서 사용하는것은 Object가 아닌 앞쪽의 문자열
		request.setAttribute("a", a);
		request.setAttribute("b", b);

		Boolean c;

		c = false;

		request.setAttribute("c", c);
	%>

	<pre>
	a:${ a }
	b:${ b }
	c:${ c }
	
	a+b:${ a + b }
	
	eq:${ a eq b } <!-- a와 b가 같은가 false -->
	eq:${ a == b }
	
	ne:${a ne b }
	ne:${a != b }
	
	gt:${a gt b }
	gt:${a > b }
	
	lt:${a lt b }
	lt:${ a < b }
	
	le:${a le b } <!--  <= -->
	ge:${a ge b } <!--  >= -->
	
	div:${a div b }	<!-- a / b -->
	mod:${a mod b } <!-- a % b -->
	 
	c:${ !c } <!-- true -->
	
	${a == 10 && !c }
	
	</pre>

	<br>
	<br>

	<%
		MemberDto mem = new MemberDto();
		mem.setMessage("Hello El");

		request.setAttribute("mem", mem);
	%>
	<!-- "mem" 접근 -->
	<%=mem.getMessage()%>
	<!-- mem.getMessage 자동호출 -->
	<br> ${mem.message}

	<%
		String array[] = { "hello", "world" };

		request.setAttribute("array", array);
	%>

	<%=array[0]%>
	<br> ${ array[0] }
	<br>

	<%
		List<String> list = new ArrayList<>();
		list.add("world");
		list.add("el");

		request.setAttribute("list", list);
	%>

	<%=list.get(0).toString()%>
	<br> ${ list[0] }
	<br>
	<br>

	<%
		List<MemberDto> memList = new ArrayList<>();

		MemberDto m = new MemberDto();
		m.setMessage("첫번째 메시지");
		memList.add(m);

		m = new MemberDto();
		m.setMessage("두번째 메시지");
		memList.add(m);

		request.setAttribute("memList", memList);
	%>

	<%=memList.get(1).getMessage()%>
	<br> ${ memList[1].message }
	<br>
	<br>

	<%
		HashMap<String, String> map = new HashMap<>();

		map.put("apple", "사과");
		map.put("grape", "포도");

		request.setAttribute("map", map);
	%>
텍스토리

	<%=map.get("apple")%>
	<br> ${map.apple}
	<!--문자열로 키값 넣어주기  -->
	<br> ${map["apple"] }

</body>
</html>
반응형

'Java > java 기초' 카테고리의 다른 글

jsp tag  (0) 2020.01.23
Core tag  (0) 2020.01.23
jsp 내장객체  (0) 2020.01.20
jsp 기초  (0) 2020.01.20
Servlet 기초 응용  (0) 2020.01.17