레이블이 jsp인 게시물을 표시합니다. 모든 게시물 표시
레이블이 jsp인 게시물을 표시합니다. 모든 게시물 표시

2017년 12월 4일 월요일

jstl을 이용한 javascript에서 el값 받기 JSP / JAVA

jstl을 이용한 javascript에서 el값 받기   JSP / JAVA  
2013. 7. 19. 14:22
복사http://blog.naver.com/typeofb/191469973

// java
HashMap<Object, Object> map = new HashMap<Object, Object>();
map.put("name", "홍길동");
map.put("city", "서울");
map.put("age", 30);
 
ArrayList<Object> list = new ArrayList<Object>();
list.add("hong@naver.com");
list.add("gil@daum.net");
list.add("dong@nate.com");
 
ArrayList<HashMap<Object, Object>> arrayListMap = new ArrayList<HashMap<Object, Object>>();
arrayListMap.add(map);
 
HashMap<Object, ArrayList<Object>> lMultiData = new HashMap<Object, ArrayList<Object>>();
lMultiData.put("email", list);
 
mav.addObject("list_map", arrayListMap);
mav.addObject("map_list", lMultiData);
 
 
// javascript
var list1 = new Array();
<c:forEach items="${list_map}" var="item1">
list1.push("${item1.name}");
list1.push("${item1.city}");
list1.push("${item1.age}");
</c:forEach>
for (var i = 0; i < list1.length; i++) {
    alert(list1[i]);
}
alert("${list_map[0].name}");
 
var list2 = new Array();
<c:forEach items="${map_list.email}" var="item2">
list2.push("${item2}");
</c:forEach>
for (var i = 0; i < list2.length; i++) {
    alert(list2[i]);
}

2017년 8월 22일 화요일

JSP에서 웹 애플리케이션의 절대 주소 획득하기

JSP에서 웹 애플리케이션의 절대 주소 획득하기

웹 개발시에는 일반적으로 상대 주소를 사용하여 개발한다.
Java EE 기반의 웹 애플리케이션 개발시 JSTL(JavaServer Pages Standard Tag Library)을
사용하여 JSP(JavaServer Pages)를 구현하는 것은 가장 간단하면서 효율적인 방법이다.
JSP 내에서 페이지 리다이렉션 및 AJAX(Asynchronous JavaScript and XML) 요청 등 필요에
의해 애플리케이션의 주소를 다룰 때 대부분은 <c:url value="" /> 태그를 사용하여 상대 주소를 구현하는 방법을 사용한다.

하지만 가끔씩 절대 주소가 필요할 때가 있다.

절대 주소는 어떻게 획득할까?
javax.servlet.http.HttpServletRequest 오브젝트가 제공하는 정보를 활용하면 절대 주소를 획득하는 것이 가능하다.
JSP에서는 아래와 같이 해당 정보를 획득할 수 있다.

${pageContext.request.scheme}: http
${pageContext.request.serverName}: localhost
${pageContext.request.serverPort}: 8080
${pageContext.request.contextPath}: /someApp
JSP에서 구현된 JavaScript에서는 위 정보를 활용하여 아래와 같이 웹 애플리케이션의 절대 주소를 획득할 수 있다.

var absoluteUrl = '${pageContext.request.scheme}' + '://' + '${pageContext.request.serverName}' + ':' + '${pageContext.request.serverPort}' + '${pageContext.request.contextPath}';