<%@page contentType="text/html; charset=utf-8" %> <%@ include file = "/common/common.jsp"%> <% String bbsCd = Util.nullToString(request.getParameter("bbs_cd")); String pSeq = Util.nullToString(request.getParameter("p_seq")); String seq = Util.nullToString(request.getParameter("seq")); String filePath = PropertyManager.getProperty("dir.bbsfiles"); String fileName = null; String oriFileName = null; StringBuffer sql = new StringBuffer(); DBManager dbm = null; QueryResult qr = null; List param = new ArrayList(); param.add(bbsCd); param.add(pSeq); param.add(seq); try { dbm = new DBManager(); sql.append("SELECT NAME, ORI_NAME FROM T_CM_COMMON_BBS_FILE WHERE BBS_CODE = ? AND P_SEQ = ? AND SEQ = ?"); qr = dbm.executeQuery(sql, param); if(qr.hasNext()) { fileName = qr.nextValue(1); oriFileName = qr.nextValue(2); sql.delete(0, sql.length()); sql.append("UPDATE T_CM_COMMON_BBS_FILE SET DOWNHIT = DOWNHIT + 1 WHERE BBS_CODE = ? AND P_SEQ = ? AND SEQ = ?"); dbm.executeUpdate(sql, param); } else { out.print(HTMLUtil.getScript("alert('파일이 존재하지 않습니다.');")); } } catch(Exception e) { out.print(HTMLUtil.getScript("alert('처리중 오류가 발생하였습니다.');")); return; } finally { if(dbm != null) dbm.releaseConnection(); } InputStream in = null; OutputStream os = null; try { out.clear(); File file = new File(filePath + fileName); if(file.exists()) { in = new FileInputStream(file); response.reset(); //response.setContentType(""); response.setHeader ("Content-Disposition", "attachment; filename=\"" + oriFileName + "\"" ); response.setHeader ("Content-Length", "" + file.length()); os = response.getOutputStream(); byte b[] = new byte[4096]; int len = 0; while((len = in.read(b)) > 0 ) { os.write(b, 0, len); } } else { out.print(HTMLUtil.getScript("alert('파일이 존재하지 않습니다.');")); } } catch(Exception e) { out.print(HTMLUtil.getScript("alert('처리중 오류가 발생하였습니다.');")); } finally { if(in != null) { try { in.close(); } catch(Exception e) {} } if(os != null) { try { os.close(); } catch(Exception e) {} } } %>