[jsp] csv 파일 다운로드 만들기
LIST 결과를 엑셀로 다운로드 받을 경우가 있지만 때에 따라 CSV로 받아야 할 경우도 있습니다.
아래는 CSV로 다운받을 경우에 적용 예 입니다.
response.setHeader("Content-Disposition", "attachment; filename="+fileName); //파일이름 지정
response.setHeader("Content-Type", "text/csv; charset=MS949"); //컨텐츠 타입
헤더에 Content-Type을 text/csv로 문자셋을 MS949로 지정해 줍니다. (csv는 UTF8로 지정하면 한글이 깨집니다.)
그리고 BODY 부분에 들어갈 결과 값은 , 을 구분자로 적어주시면 됩니다.
<c:if test="${not empty memberList}">
email, 이름, 전화번호
<c:forEach items="${memberList}" var="member" varStatus="idx">
${member.member_email}, ${member.member_name}, ${member.member_tel}
</c:forEach>
</c:if>
<c:if test="${empty memberList}">
데이터가 없습니다.
</c:if>
위와 같이 작성하면
email, 이름, 전화번호
test@test.com, 김구라, 010-3333-3333
test1@test.com, 박명수, 010-6666-6666
test3@test.com, 김대각, 010-7777-7777
이런 식으로 내용이 담긴 CSV가 생성 됩니다.