return void 로 submit 하게 되면 리턴 값이 없어서 엑셀 다운로드 완료여부를 알수가 없다
그래서 세션에 담아 체크 하도록 구현
********* jsp
====엑셀 다운로드 시작 ====
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
function excelDown(){
var message = bnsYear + "년도 내역을 엑셀형태로 다운받으시겠습니까?";
if(confirm(message)){
maskShow();
var frm = document.excel_form;
//엑셀 다운로드(submit) 실행후 일정시간동안 완료 세션
FILEDOWNLOAD_INTERVAL = setInterval(function() {
$.ajax({
type:'POST',
url:"<c:url value='/getFlag.do' />",
data:{},
dataType:'json',
success:function(data){
initFlag();
maskHide();
clearInterval(FILEDOWNLOAD_INTERVAL);
}
}
});
}, 500);
}
}
//세션 초기화
function initFlag(){
$.ajax({
type:'POST',
url:"<c:url value='/initFlag.do' />",
data:{},
dataType:'json',
success:function(data){
}
});
}
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
********* java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
@RequestMapping(value="/getFlag.do")
public ModelAndView getFlag(HttpServletRequest request,
ModelMap model) throws Exception{
ModelAndView mv = new ModelAndView(new AjaxView());
JSONObject json = new JSONObject();
String result = EgovStringUtil.nullConvert(WcSessionUtil.getAttribute("downFlag"));
json.put("result", result);
mv.addObject("view", json.toString());
return mv;
}
@RequestMapping(value="/initFlag.do")
public ModelAndView setFlag(HttpServletRequest request,
ModelMap model) throws Exception{
ModelAndView mv = new ModelAndView(new AjaxView());
JSONObject json = new JSONObject();
WcSessionUtil.setAttribute("downFlag", null);
String result = "Y";
json.put("result", result);
mv.addObject("view", json.toString());
return mv;
}
http://colorscripter.com/info#e" target="_blank" style="color:#e5e5e5text-decoration:none">Colored by Color Scripter
|
다운로드 액션에서
WcSessionUtil.setAttribute("downFlag", "true"); //다운로드 완료 세션 추가
마지막에 추가
'web > java' 카테고리의 다른 글
[java] 정규식을 이용한 개인정보 마스킹 (0) | 2020.04.09 |
---|---|
java timestamp (0) | 2020.04.01 |
java jsonObject 처리 (0) | 2020.04.01 |
java 비동기 처리 하기 (0) | 2020.04.01 |