
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
package froala.editor.utils.view;
import java.io.IOException;
import java.io.OutputStream;
import java.net.URLEncoder;
import java.util.Calendar;
import java.util.Map;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.view.AbstractView;
import egovframework.rte.fdl.cmmn.exception.EgovBizException;
import froala.editor.utils.ExcelUtil;
/**
*
* @since 2020. 6. 16.
* @author 손희문
* <PRE>
* -----------------------
* 개정이력
* 2020. 6. 16. 손희문 : 최초작성
* </PRE>
*/
public class ExcelDownloadView extends AbstractView {
@Override
protected void renderMergedOutputModel(Map<String, Object> model, HttpServletRequest request,
HttpServletResponse response) throws EgovBizException, IOException {
ExcelUtil excel = (ExcelUtil) model.get("excel");
String fileName = (String) model.get("fileName");
Calendar cal = Calendar.getInstance();
//현재 년도, 월, 일
int year = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH) + 1;
int date = cal.get(Calendar.DATE);
String curDate = year + "." + month + "." + date;
// 쿠키로 다운로드 완료 시점 확인
Cookie cookie = new Cookie("fileDownloadToken", "TRUE");
cookie.setPath("/");
cookie.setSecure(true);
response.addCookie(cookie);
// 입력된 내용 파일로 쓰기
response.setContentType("Application/Msexcel");
response.setHeader("Content-Disposition", "ATTachment; Filename=" + URLEncoder.encode(fileName+ "_" + curDate, "UTF-8") + ".xlsx");
//response.setContentType("application/download;charset=utf-8");
//response.setHeader("Content-Disposition", "attachment; filename=\"" + fileName + "\";");
//response.setHeader("Content-Transfer-Encoding", "binary");
OutputStream fileOut = response.getOutputStream();
excel.write(fileOut);
fileOut.close();
response.getOutputStream().flush();
response.getOutputStream().close();
}
}