엑셀로 다운 로드 하는 기능을 구현하는 방법.
1. 첫머리의 contentType에서 excel로 다운 받을 수 있도록 해당 내용을 넣어주고
<%@ page language="java" contentType="application/vnd.ms-excel; charset=UTF-8"
pageEncoding="UTF-8"%>
2. 헤더에서 두줄을 추가해 주면 해당 페이지가 Excel로 자동으로 다운 받도록 기능한다.
<%
response.setHeader("Content-Type", "application/vnd.ms-xls");
response.setHeader("Content-Disposition", "inline; filename=myfile.xls");
%>
[ 결과 ] : 해당 페이지로 들어갈 때, 화면에 출력될 데이터가 그대로 엑셀로 담겨져서 보여진다.
[ 필요한 점 ] : 화면에 들어가서 필요한 데이터를 따로 분류 혹은 검색하여 해당데이터만 엑셀로 다운받으려고 할 경우 추가의 작업이 필요하다.
[ 추가한 점 ]
1. 화면에 출력된 데이터를, '버튼'을 누를때 화면의 데이터가 엑셀로 다운 받아지도록 한다.
<input type = "button" value = "엑셀 다운로드" onclick="goExcel()"/>
<script>
function goExcel() {
document.excelData.method="POST";
document.excelData.action="excelDownData.do";
document.excelData.submit();
}
</script>
<form name = "excelData">
<input type = "text" name="table" id="table" value = "${searchOption.table}" />
</form>
2. Controller 에서 엑셀을 다운 받는 기능을 건네받고, 전달하도록 함.
( Controller에서 엑셀 다운로드 기능하는 부분을 추가 )
@RequestMapping( value="/excelDownData.do" , method=RequestMethod.POST )
public ModelAndView stockRequestedAssetData( @ModelAttribute( "command" ) StockBean command ) {
ModelAndView mav = new ModelAndView( "Excel을 다운하는 기능을 코딩한 jsp" );
List<StockRequestedAssetBean> list = stockDao.searchRequest( command );
System.out.println("stockRequestedAsset's list size : " + list.size());
mav.addObject( "stockRequestedAsset" , list );
return mav;
}
3. Excel 로 다운받는 jsp를 추가.
<%@ page language="java" contentType="application/vnd.ms-excel; charset=UTF-8"
pageEncoding="UTF-8"%>
// 데이터 값을 넘겨 받기 위한 C 태그
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
response.setHeader("Content-Type", "application/vnd.ms-xls");
response.setHeader("Content-Disposition", "inline; filename=myfile.xls");
%>
<body>
<table>
<tr>
<th>테이블</th>
</tr>
<c:forEach var="var" items="${값을 불러올 데이터}">
<tr>
<td>${var.table}</td>
</tr>
</c:forEach>
</table>
</body>
**jsp 엑셀 다운
위와 같이 코딩했을 시, 필요한 데이터를 검색하는 페이지에서 '엑셀 다운로드' 버튼을 눌렀을 때 흐름을 타고 필요한 데이터가 출력된 테이블을 엑셀로 다운받아 저장할 수 있다.
'FrontEND > Jsp' 카테고리의 다른 글
jsp에서 resource 경로 세팅 방법 (1) | 2019.05.16 |
---|