[JSP] table 내용을 엑셀로 Export


웹프로그래밍을 하다보면 화면에서 엑셀로 Export 해달라는 기능요청이 있는데
스프링, JSP 로 웹프로그램을 만들때 사용하는 팁을 소개합니다.
table 내용을 엑셀로 export 하는 소스 입니다.

excel_download.jsp 소스

<%@ page language="java" contentType="application/vnd.ms-excel;charset=UTF-8" %>

<%
String file_name = "excel_download";
String ExcelName = new String(file_name.getBytes(),"UTF-8")+".xls";
response.setContentType("application/vnd.ms-excel");
response.setHeader("Content-Disposition", "attachment; filename="+ExcelName);
response.setHeader("Content-Description", "JSP Generated Data");
response.setHeader("Pragma", "no-cache");

String table = request.getParameter("excel_table");
%>

<html>
<head>
</head>
<body>
<Table>
<%=table%>
</Table>
</body>
</html>

웹페이지에서 호출은
아래 소스를 동작 할 페이지에 넣어 줍니다.

<form name="excel_form" id="excel_form" action="excel_download.jsp" method="post" target="_blank">
<input type="hidden" name="excel_table" id="excel_table" />
<input type="hidden" name="file_name" id="file_name" />
</form>

버튼 클릭 이벤트에다가 다음과 같이 코딩하면 됩니다.
​"#table" 값이 export 할 테이블 아이디구요.​
Jquery 를 통해서 호출합니다.

$("#excel_table").val($("#table").html());
$("#excel_form").submit();

처음에 form tag 값을 사용하지 않고 Jquery 로 호출을 했는데
정상적으로 동작하지 않아서 form 태그를 사용하게 되었습니다.

댓글

이 블로그의 인기 게시물

2025년 7월 다이어리

1. 대학교 축제 전시 프로젝트