SpringBoot 통합 Easy Excel 절차

5904 단어 SpringBootEasyExcel
1.Easy Excel 소개
EasyExcel 장점
  • 건 8195 건 주해 식 사용자 정의 작업.
  • *8195°입 출력 이 간단 하고 입 출력 과정 을 제공 하 는 인터페이스
  • *8195°8195°어느 정도 의 단원 격 합병 등 영 활성화 작업 을 지원 합 니 다.
  • 2.상용 주해
  • @ExcelProperty 는 현재 필드 가 엑셀 에 대응 하 는 열 을 지정 합 니 다.이름 이나 Index 에 따라 일치 할 수 있 습 니 다.물론 쓰 지 않 아 도 됩 니 다.기본 첫 번 째 필드 는 index=0 입 니 다.이런 식 으로 유추 합 니 다.절대 주의 하 세 요.모두 쓰 지 않 거나 index 를 사용 하거나 모두 이름 으로 일치 합 니 다.소스 코드 중 세 개 를 섞 어 어떻게 정렬 하 는 지 잘 모 르 는 한 세 개 를 섞 어 쓰 지 마 세 요.
  • @ExcelIgnore 기본 필드 는 엑셀 과 일치 합 니 다.이 주 해 를 추가 하면 이 필드
  • 을 무시 합 니 다.
  • @DateTimeFormat 날짜 변환,엑셀 날짜 형식의 데 이 터 를 String 으로 받 으 면 이 주 해 를 호출 합 니 다.안에 있 는 value 는 java.text.Simple DateFormat
  • 참조
  • @NumberFormat 숫자 변환,String 으로 엑셀 디지털 형식의 데 이 터 를 받 으 면 이 주 해 를 호출 합 니 다.안의 value 는 자바.text.decimalFormat
  • 을 참조 합 니 다.
  • @ExcelIgnore Unannotated 는 기본적으로 ExcelProperty 의 주 해 를 넣 지 않 은 것 은 읽 기와 쓰기 에 참여 하고 참여 하지 않 는 것 을 추가 합 니 다.
  • 의존
    
      <!-- easyexcel                -->
    <dependency>
       <groupId>com.alibaba</groupId>
       <artifactId>easyexcel</artifactId>
       <version>2.1.4</version>
    </dependency>
        <!-- servlet-api -->
    <dependency>
       <groupId>javax.servlet</groupId>
       <artifactId>javax.servlet-api</artifactId>
       <version>4.0.1</version>
       <scope>provided</scope>
    </dependency>
    <dependency>
       <groupId>com.alibaba</groupId>
       <artifactId>fastjson</artifactId>
       <version>1.2.47</version>
    </dependency>
    
    
    감청
    
    /**
     * EasyExcel     
     */
    public class ExcelListener extends AnalysisEventListener {
        //          
        private List<Object> datas = new ArrayList<Object>();
    
        @Override
        public void invoke(Object o, AnalysisContext analysisContext) {
            datas.add(o);//     list,     ,           。
            doSomething(o);//         
        }
    
        private void doSomething(Object object) {
            //1、      
        }
    
        public List<Object> getDatas() {
            return datas;
        }
    
        public void setDatas(List<Object> datas) {
            this.datas = datas;
        }
    
        @Override
        public void doAfterAllAnalysed(AnalysisContext analysisContext) {
            // datas.clear();//           
        }
    }
    
    
    5.인터페이스 가 져 오기 Excel
    
    try {
                //     
                String filename = file.getOriginalFilename();
                //     
                InputStream inputStream = file.getInputStream();
                //      AnalysisEventListener    
                ExcelListener listener = new ExcelListener();
                //    
                ExcelReader excelReader = new ExcelReader(inputStream, ExcelTypeEnum.XLS, null, listener);
                //    
                excelReader.read(new Sheet(1, 0, Test.class));
                //    
                List<Object> list = listener.getDatas();
                if (list.size() > 1) {
                    for (int i = 0; i < list.size(); i++) {
                        Testobj = (Test) list.get(i);
                        JSONObject jo = new JSONObject();
                    }
                }
            } catch (Exception e) {
                System.out.println(e.getMessage());
            }
    
    
    6.인터페이스 내 보 내기 Excel(HttpServletResponse response,HttpServletRequest request)
    
    try {
        String filenames = "111111";
        String userAgent = request.getHeader("User-Agent");
        if (userAgent.contains("MSIE") || userAgent.contains("Trident")) {
            filenames = URLEncoder.encode(filenames, "UTF-8");
        } else {
            filenames = new String(filenames.getBytes("UTF-8"), "ISO-8859-1");
        }
        response.setContentType("application/vnd.ms-exce");
        response.setCharacterEncoding("utf-8");
        response.addHeader("Content-Disposition", "filename=" + filenames + ".xlsx");
        EasyExcel.write(response.getOutputStream(), Test.class).sheet("sheet").doWrite(testList);
    } catch (Exception e) {
    }
    
    7.로 컬 가 져 오기,로 컬 내 보 내기
    
    List<Test> testList = new ArrayList<>();
    try {
        String strUrl = "C:\\Users\\Administrator\\Desktop\\json.xlsx";
        File multipartFile = new File(strUrl);
        InputStream inputStream = new FileInputStream(multipartFile);
        //      AnalysisEventListener    
        ExcelListener listener = new ExcelListener();
        //    
        ExcelReader excelReader = new ExcelReader(inputStream, ExcelTypeEnum.XLS, null, listener);
        //    
        excelReader.read(new Sheet(1, 0, Test.class));
        //    
        List<Object> list = listener.getDatas();
        if (list.size() > 1) {
            for (int i = 0; i < list.size(); i++) {
                Testobj = (Test) list.get(i);
            }
        }
    } catch (Exception e) {
        System.out.println(e.getMessage());
    }
    try {
        String strUrl = "C:\\Users\\Administrator\\Desktop\\json"+System.currentTimeMillis()+".xlsx";
        EasyExcel.write(strUrl,Test.class).sheet("sheet").doWrite(testList);
    } catch (Exception e) {
    }
    
      이상 은 Easy Excel 의 기본 적 인 사용 과정 이 므 로 좋아요 와 관심 을 가지 고 교 류 를 하 는 것 을 환영 합 니 다.
    이상 은 바로 SpringBoot 통합 Easy Excel 의 절차 에 대한 상세 한 내용 입 니 다.SpringBoot 통합 Easy Excel 에 관 한 자 료 는 저희 의 다른 관련 글 을 주목 해 주 십시오!

    좋은 웹페이지 즐겨찾기