Java tutorial
/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package com.kcs.action; import static com.kcs.action.FrwImportAction.logger; import com.kcs.core.actions.BaseAction; import com.kcs.core.utilities.DateUtil; import com.kcs.core.utilities.PaggingList; import com.kcs.core.utilities.Utility; import com.kcs.model.Datasetdip; import com.kcs.model.Datasetfrw; import com.kcs.service.DatasetDipService; import com.kcs.service.DatasetFrwService; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.math.BigDecimal; import java.text.ParseException; import java.util.ArrayList; import java.util.Date; import java.util.Iterator; import java.util.List; import javax.servlet.http.HttpServletRequest; import org.apache.log4j.Logger; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.poifs.filesystem.POIFSFileSystem; import org.springframework.beans.factory.annotation.Autowired; /** * * @author LENOVO */ public class ImportExcelDsDipAction extends BaseAction { private static Logger logger = Logger.getLogger(ImportExcelDsDipAction.class); /** * @return the logger */ public static Logger getLogger() { return logger; } /** * @param aLogger the logger to set */ public static void setLogger(Logger aLogger) { logger = aLogger; } private File toBeUploaded; private String toBeUploadedFileName; private String toBeUploadedContentType; private HttpServletRequest servletRequest; private PaggingList paging; private String dataSetDate; private List<Datasetdip> resultsFromExcel; private String checkDatasetDate; @Autowired private DatasetDipService datasetDipService; @Override public String success() throws Exception { getLogger().debug("= = = = = Into success = = = = ="); if (Utility.isNull(getPaging())) { setPaging(new PaggingList()); } return SUCCESS; } public String readExcel() throws Exception { session.remove("EXCEL_TO_LIST_DIP"); logger.debug("= = = = = Into readExcel = = = = ="); excelToList(); return SUCCESS; } public void excelToList() throws Exception { String filePath = getServletRequest().getSession().getServletContext().getRealPath("/"); try { InputStream input = new BufferedInputStream(new FileInputStream(this.getToBeUploaded())); POIFSFileSystem fs = new POIFSFileSystem(input); HSSFWorkbook wb = new HSSFWorkbook(fs); HSSFSheet sheet = wb.getSheetAt(0); Iterator rows = sheet.rowIterator(); setResultsFromExcel(new ArrayList<Datasetdip>()); int checkColName = 0; setCheckDatasetDate("true"); while (rows.hasNext()) { HSSFRow row = (HSSFRow) rows.next(); if (checkColName != 0) { Datasetdip datasetdip = new Datasetdip(); Date dateFromJsp = DateUtil.convertDateFromJsp(getDataSetDate()); Date dateFromExcel = DateUtil.getDateFromString(row.getCell(3).toString(), DateUtil.DATE_FORMAT_YYYYMMDDX); logger.debug("dateFromJsp >>> " + dateFromJsp); logger.debug("dateFromExcel >>> " + dateFromExcel); if (dateFromJsp.compareTo(dateFromExcel) != 0) { setCheckDatasetDate("false"); break; } int index = 0; datasetdip.setOrgId(row.getCell(index++).toString()); datasetdip.setDataPvdrBrcNo(row.getCell(index++).toString()); datasetdip.setFiRptGrp(row.getCell(index++).toString()); datasetdip.setDataSetDate(convertDate(row.getCell(index++).toString())); datasetdip.setItemType(row.getCell(index++).toString()); datasetdip.setItemDesc(row.getCell(index++).toString()); datasetdip.setCtryId(row.getCell(index++).toString()); datasetdip.setCurr(row.getCell(index++).toString()); datasetdip.setAmt(new BigDecimal(row.getCell(index++).toString())); datasetdip.setUpdDate(DateUtil.getCurrentDateTime()); datasetdip.setUpdBy(getCurrentLoginId()); index++; index++; datasetdip.setSysCode(row.getCell(index++).toString()); datasetdip.setSeq(Long.valueOf(row.getCell(index++).toString())); datasetdip.setCustCode(row.getCell(index++).toString()); getResultsFromExcel().add(datasetdip); } checkColName++; } setResultsFromExcel(getResultsFromExcel()); session.put("EXCEL_TO_LIST_DIP", getResultsFromExcel()); } catch (IOException ex) { ex.printStackTrace(); logger.error("Error >>> " + ex.getMessage()); } } public String updateExcelToDB() throws Exception { logger.debug("= = = = = Into updateExcelToDB = = = = ="); setResultsFromExcel((List<Datasetdip>) session.get("EXCEL_TO_LIST_DIP")); if (getCheckDatasetDate().equalsIgnoreCase("true")) { logger.debug("check datasetdate pass === " + getDataSetDate()); getDatasetDipService().updateByList(getResultsFromExcel(), getDataSetDate()); setPaging(new PaggingList()); getPaging().setIndex(1); getPaging().setPageSize(10); setPaging(datasetDipService.findByCriteriaService(getPaging(), DateUtil.convertDateFromJsp(getDataSetDate()), "")); } setCheckDatasetDate(""); return SUCCESS; } private Date convertDate(String date) throws ParseException { if (!date.equals("null") || date.equals(null)) { return DateUtil.parse(date, DateUtil.DATE_FORMAT_YYYYMMDDX); } else { return null; } } /** * @return the toBeUploaded */ public File getToBeUploaded() { return toBeUploaded; } /** * @param toBeUploaded the toBeUploaded to set */ public void setToBeUploaded(File toBeUploaded) { this.toBeUploaded = toBeUploaded; } /** * @return the toBeUploadedFileName */ public String getToBeUploadedFileName() { return toBeUploadedFileName; } /** * @param toBeUploadedFileName the toBeUploadedFileName to set */ public void setToBeUploadedFileName(String toBeUploadedFileName) { this.toBeUploadedFileName = toBeUploadedFileName; } /** * @return the toBeUploadedContentType */ public String getToBeUploadedContentType() { return toBeUploadedContentType; } /** * @param toBeUploadedContentType the toBeUploadedContentType to set */ public void setToBeUploadedContentType(String toBeUploadedContentType) { this.toBeUploadedContentType = toBeUploadedContentType; } /** * @return the servletRequest */ public HttpServletRequest getServletRequest() { return servletRequest; } /** * @param servletRequest the servletRequest to set */ @Override public void setServletRequest(HttpServletRequest servletRequest) { this.servletRequest = servletRequest; } /** * @return the paging */ public PaggingList getPaging() { return paging; } /** * @param paging the paging to set */ public void setPaging(PaggingList paging) { this.paging = paging; } /** * @return the dataSetDate */ public String getDataSetDate() { return dataSetDate; } /** * @param dataSetDate the dataSetDate to set */ public void setDataSetDate(String dataSetDate) { this.dataSetDate = dataSetDate; } /** * @return the resultsFromExcel */ public List<Datasetdip> getResultsFromExcel() { return resultsFromExcel; } /** * @param resultsFromExcel the resultsFromExcel to set */ public void setResultsFromExcel(List<Datasetdip> resultsFromExcel) { this.resultsFromExcel = resultsFromExcel; } /** * @return the checkDatasetDate */ public String getCheckDatasetDate() { return checkDatasetDate; } /** * @param checkDatasetDate the checkDatasetDate to set */ public void setCheckDatasetDate(String checkDatasetDate) { this.checkDatasetDate = checkDatasetDate; } /** * @return the datasetDipService */ public DatasetDipService getDatasetDipService() { return datasetDipService; } /** * @param datasetDipService the datasetDipService to set */ public void setDatasetDipService(DatasetDipService datasetDipService) { this.datasetDipService = datasetDipService; } }