서울땅콩의 취미생활

데이타베이스에서 다음과 같이 쿼리를 통하여 목록을 조회한다.

xml

select '2015' as stdr_year
union all
select '2014' as stdr_year

그러면 다음과 같이 결과가 출력된다.

 

ServiceImpl

쿼리르 통하여 조회한 데이타를 Service를 통하여 Controller로 리턴한다. 리턴할때는 resultMap에 담아서 리턴하여주었다. 리턴타입은 여러가지로 잡아줄 수 있을 것이다.

	@SuppressWarnings("unchecked")
	public Map<String, Object> getStdrYearList(CommonVO vo) throws Exception{
		List<CommonVO> getStdrYearList = new ArrayList();
		
		Map<String, Object> resultMap = new HashMap<String, Object>();
		getStdrYearList = (List<CommonVO>) cmmnDao.list(vo, "bigdataDashboard.getStdrYearList");
		resultMap.put("getStdrYearList", getStdrYearList);
		
		return resultMap;
	}

 

Controller

Service에서 넘겨받은 데이타를 Controller에서 가공하여 model에 담아서 view로 넘겨준다. 

	@RequestMapping("/getData.do")
	public String getData(Model model, HttpServletRequest request, HttpServletResponse response) throws Exception {
		CommonVO vo = new CommonVO(request);
		Map<String, Object> resultMap = new HashMap<String, Object>();

		resultMap = dashboardService.getStdrYearList(vo);
		model.addAttribute("infoList", resultMap);
		
		return "view";
	}

 

 

JSP

view에서는 다음과 같이 forEach문을 사용한다.

     <select id="speed" class="w43p">
     	<c:set var="arr" value="${infoList.getStdrYearList}"/>
		<c:forEach var="item" items="${arr}" varStatus="status">
			<option value="${item.stdrYear}"><c:out value="${item.stdrYear}"></c:out></option>
		</c:forEach>
     </select>

 

javascript

javascript에서는 다음과 같이 넘겨받은 값을 사용할 수 있다.

	var dataLength = '${fn:length(infoList.getStdrYearList)}';
	alert(dataLength);

 

쿼리를 조회하여 서비스와 컨트롤러를 통하여 JSP로 넘겨받아서 forEach를 사용하는 방법을 알아보았다. 참고하면 될것이다.

 

공유하기

facebook twitter kakaoTalk kakaostory naver band