달력

3

« 2024/3 »

  • 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

'c:set'에 해당되는 글 1

  1. 2013.08.09 JSP 의 EL 과 JSTL
2013. 8. 9. 17:45

JSP 의 EL 과 JSTL 그거/Java2013. 8. 9. 17:45

안쓰던거 쓰려니 몸이 고생....이 아니라 머리가 고생 -_-;


환경은 이렇다.

tomcat 6.0, servlet 2.4, jstl 1.1.2


JSTL 을 쓰려고 아래와 같이 코딩했다.


<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<%

String a = "str";

%>


<body>

<c:out value="${a}"/>


값이 안나온다. 젠장

별 뻘짓을 다 해도 데이터가 안나옴. ㅡㅡ;

아래와 같이 하니 나옴.


<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<c:set var="a" value="str"/>


<body>

<c:out value="${a}"/>


그렇다.

EL, JSTL 요놈들은 <% %> 에서 일반 변수 선언한건 안된다.

찾아보니,

<c:set/> 요놈이 page, request, session, application 4 영역에 attribute 를 저장하는 놈이다.

EL을 사용하려면 <c:set/> 을 이용해 지정한 변수만 사용가능하다는.. 

그렇지 않으면, 위 page, request, session, application 영역의 변수만 사용가능하다는거다.


다른 예제.


<%

String a = "DDDD:l";

pageContext.setAttribute("id", "lucky");

session.setAttribute("age", "36");

application.setAttribute("team", "FW");

request.setAttribute("name", "Choi");

%>


위와 같이 설정하고,


<c:set var="str" value="<%= a %>"/>

<%= a %><br>

a = ${a}<br>

a = <c:out value="${str}" default="none"/> <br>

a = ${str}<br>


id= ${id}<br>

age= ${age}<br>

name= ${name}<br>

team= ${team}<br>


<c:out value="id=${id}"/><br>

<c:out value="age=${age}"/><br>

<c:out value="name=${name}"/><br>

<c:out value="team=${team}"/><br>


요걸 찍어보면 아래와 같은 결과가 나옴.

DDDD:l
a = 
a = DDDD:l 
a = DDDD:l

id= lucky
age= 36
name= Choi
team= FW

id=lucky
age=36
name=Choi
team=FW


끝.

'그거 > Java' 카테고리의 다른 글

Spring 의 SimpleJdbcCall 이용시 에러.  (0) 2014.05.19
enum 사용하기  (0) 2013.05.02
자바 소스 디컴파일 해보기.  (0) 2013.04.11
Runtime Data Access  (0) 2012.07.30
NoClassDefFoundError vs ClassNotFoundException  (0) 2011.10.11
:
Posted by 뽀기