Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- Stock ipo
- JavaScript
- 주식 청약
- 오라클
- 리눅스
- 공모주 청약
- 7월 공모주 청약 일정
- 자바
- linux
- 공모주 청약 일정
- html
- 자바스크립트
- jquery
- 코드이그나이터
- java
- IPO
- 주식
- php
- Eclipse
- SQL
- Stock
- css
- 6월 공모주 청약 일정
- 맥
- 공모주
- Oracle
- codeigniter
- 주식 청약 일정
- MYSQL
- 제이쿼리
Archives
- Today
- Total
개발자의 끄적끄적
[java] JSP EL 변수명 동적으로 처리하는법 본문
728x90
반응형
[java] JSP EL 변수명 동적으로 처리하는법
for(int i = 0; i < 10; i++) {
mav.addObject("fname" + i, fname[i]);
}
이렇게 콘트롤러에서 지정하면, JSTL로 받을 때 어렵습니다.
${fname0}, ${fname1}, ...
이렇게 직접 지정하면 됩니다만,
<c:forEach begin="0" end="4" varStatus="status">
${fname${status.index}}
</c:forEach>
이러면 실행이 안 되고 예외가 발생합니다.
Stacktrace:] with root cause
org.apache.el.parser.ParseException: Encountered " <ILLEGAL_CHARACTER> "{ "" at line 1, column 12.
Was expecting one of:
해결방안:
이런 경우 JSTL의 requestScope와 <c:set/>을 이용하면 됩니다.
<c:set var="fname" value="fname${status.index}" />
${requestScope[fname]}
-----------------------------------------
변수명이 index1, index2 와 같다고 할때 ${fname${status.index}} 이런식의 접근은 불가능하다.
하지만 다음과 같이 jstl을 이용하면 변수명을 동적으로 구성해 줄 수 있다.
반드시 범위를 지정하고 []를 사용해서 접근 한다.
반응형
'개발 > java & jsp' 카테고리의 다른 글
[JSTL] 날짜 포맷, 요일, 기간 계산 예제! [펌] (0) | 2020.04.16 |
---|---|
[Ubuntu] Java Spring Project 배포방법 (0) | 2020.04.15 |
[java] JSTL 반복문(forEach) 사용법 정리 [펌] (0) | 2020.04.13 |
[iBatis] insert된 자동생성값 알아오기 - MySQL버전 (0) | 2020.04.11 |
[jstl] c:forEach 사용법 (0) | 2020.04.11 |
Comments