써먹는 웹개발
[Java]엑셀 다운로드 본문
202111
java 엑셀 다운로드
1. excelController
- 구분 및 데이터를 파라미터로 받아옴
2. excelService
- ExcelUtil 기반으로 엑셀 만들기
- front 또는 back에서 받아온 데이터를 엑셀 셀 각각의 위치에 맞게 입력한다.
- 엑셀 다운로드
201804
1. Js 소스 (엑셀 다운로드 버튼)
excelDownload = function() { //data load완료후 var pGridObj = $("#gridCustPri"), pFileName = moment().format('YYYYMMDDHHmmss') + "_custPriceMngt"; if(pGridObj.getGridParam("reccount") == 0) return; for(var i=0;i<$("#gridCustPri").getDataIDs().length;i++){ $("#gridCustPri").jqGrid('saveRow',$("#gridCustPri").getDataIDs()[i]); }
var params = { param : $("#gridCustPri").getRowData(), pfilename : pFileName }; $.ajax({ url: $HOST+"/excelMenuGrpDown", cache: false, type: 'POST', contentType: "application/json", success: function() { alert("엑셀 다운로드 완료되었습니다."); var ids = $("#gridCustPri").jqGrid('getDataIDs');
// 거래처 공급 단가 input for(i=0; i< ids.length; i++){ $("#gridCustPri").jqGrid('editRow', ids[i], false); } }, error: function(request, status, error){ alert("code:" + request.status + "\n" + "message:" + request.responseText + "\n" + "error:" + error); }, data: JSON.stringify(params) }); }; |
2. Java 소스
static HSSFRow row; static HSSFCell cell; @RequestMapping(value = "/excelMenuGrpDown", method = {RequestMethod.POST}) @ResponseBody public void insertorderitemdown(HttpServletRequest request, HttpSession session, @RequestBody Map<String, Object> args) throws Exception { HSSFWorkbook workbook = new HSSFWorkbook();
//Sheet명 설정 HSSFSheet sheet = workbook.createSheet("mySheet"); List<Map<String, Object>> param = (List<Map<String, Object>>) args.get("param"); String pfilename = (String)args.get("pfilename");
//출력 row 생성 row = sheet.createRow(0); row.createCell(0).setCellValue("L5/UPN"); row.createCell(1).setCellValue("NAME"); row.createCell(2).setCellValue("Price Master 단가"); row.createCell(3).setCellValue("거래처 공급단가"); row.createCell(4).setCellValue("최근 수정일"); for (int i = 0; i < param.size(); i++) { //출력 row 생성 row = sheet.createRow(i+1); row.createCell(0).setCellValue((String)param.get(i).get("itemCd")); row.createCell(1).setCellValue((String)param.get(i).get("itemNm")); row.createCell(2).setCellValue((String)param.get(i).get("price")); row.createCell(3).setCellValue((String)param.get(i).get("custPri")); row.createCell(4).setCellValue((String)param.get(i).get("date")); }
// 출력 파일 위치및 파일명 설정 FileOutputStream outFile; try { outFile = new FileOutputStream("D:\\"+pfilename+".xls"); workbook.write(outFile); outFile.close();
System.out.println("파일생성 완료");
} catch (Exception e) { e.printStackTrace(); } } |
'웹개발 > Java & Jsp' 카테고리의 다른 글
billboard.js 예제있는 주소 (0) | 2018.04.30 |
---|---|
문자열을 배열화시키는 방법 (가변 배열 만들수 있음) (0) | 2018.04.26 |
맵 가져오는 방법 (0) | 2018.04.24 |
[Java]엑셀 업로드 (0) | 2018.04.16 |
맵 데이터의 키값을 각 형식으로 변경하는 방법 (0) | 2018.03.10 |