docs: public <T> boolean write(List<T> list, Class<T> clazz) {
  		
  		ExcelMeta excelMeta = ExcelBeanHelper.getExcelMeta(clazz);
  		try {
  			Sheet sheet = workbook.createSheet(this.sheetName);
  			sheet.setDefaultColumnWidth(15); 
  			CellStyle titleStyle = workbook.createCellStyle(); 
  			titleStyle.setAlignment(HorizontalAlignment.CENTER);
  			titleStyle.setVerticalAlignment(VerticalAlignment.CENTER);
  			titleStyle.setFillForegroundColor(IndexedColors.GREY_40_PERCENT.getIndex());
  			titleStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);
  			titleStyle.setBorderBottom(BorderStyle.THIN); //下边框
  			titleStyle.setBorderLeft(BorderStyle.THIN);
  			Font font = workbook.createFont();
  			font.setFontName("宋体");
  			font.setFontHeightInPoints((short) 13);
  			titleStyle.setFont(font);
  			//列值类型
  			Class<?>[] cellValueTypes = new Class<?>[excelMeta.getTitleColumnNum()];
  			//写标题
  			for (int i = 1; i <= excelMeta.getTitleRowNum(); i++) {
  				Row excelRow = sheet.createRow(i - 1);
  				for (int j = 1; j <= excelMeta.getTitleColumnNum(); j++) {
  					TitleMeta titleMeta = excelMeta.getTitleMeta(i, j);
  					Cell cell = excelRow.createCell(j - 1);
  					cell.setCellValue(titleMeta == null ? "" : titleMeta.getTitle());
  					cell.setCellStyle(titleStyle);
  					cellValueTypes[j-1] = titleMeta.getValueType();
  				}
  			}
  			//合并表头
              //sheet.addMergedRegion(new CellRangeAddress(0, 0, 3, 8));
  			//sheet.addMergedRegion(new CellRangeAddress(0, 1, 0, 0));
  			mergeColumns(sheet,titleStyle);
  			mergeRows(sheet,titleStyle,excelMeta);
  			
  			// 行数
  			int rowsCount = sheet.getPhysicalNumberOfRows();
  			//冻结表头
  			//sheet.createFreezePane(0, rowsCount - 1);
  			
  			// 写入内容
  			List<Object[]> rows = ExcelBeanHelper.beanToExcelValueArrays(list, clazz);
  	        // 列数
  	        //int colsCount = sheet.getRow(0).getPhysicalNumberOfCells();
  			for (int i = 0; i < rows.size(); i++) {
  				Row excelRow = sheet.createRow(i + rowsCount);
  				
  				Object[] vals = rows.get(i);
  				for (int j = 0; j < vals.length; j++) {
  					Cell cell = excelRow.createCell(j);
  					if(cellValueTypes[j] == int.class || cellValueTypes[j] == Integer.class){
  					    cell.setCellValue(vals[j] == null ? 0f : Integer.parseInt(vals[j].toString()));
  					}else if(cellValueTypes[j] == float.class || cellValueTypes[j] == Float.class 
  							|| cellValueTypes[j] == double.class || cellValueTypes[j] == Double.class
  							|| cellValueTypes[j] == BigDecimal.class){
  					    cell.setCellValue(vals[j] == null ? 0d : Double.parseDouble(vals[j].toString()));
  					}else{
  						cell.setCellValue(vals[j] == null ? "" : vals[j].toString());
  					}
  				}
  			}
  			workbook.write(outputStream);
  			return true;
  		} catch (IOException e) {
  			LOG.error("流异常", e);
  		} catch (Exception e) {
  			LOG.error("其他异常", e);
  		} finally {
  		} 
  		return false;
  	}