@Slf4j
public class ExportExcelTemplate {
public static <T> Workbook dealInStockTemplate(String[] headerRow, List<T> inStockDtos, List<ExcelDropDownDto> dropDownDtos) throws NoSuchMethodException, InvocationTargetException, IllegalAccessException {
Workbook workbook = new HSSFWorkbook();
//单元格样式 - 锁定
CellStyle alterableStyle = workbook.createCellStyle();
alterableStyle.setLocked(true);
//单元格样式 - 非锁定
CellStyle nolockedStyle = workbook.createCellStyle();
nolockedStyle.setLocked(false);
//单元格样式 - 其他自定义样式
DataFormat dataFormat = workbook.createDataFormat();
CellStyle cellStyle = workbook.createCellStyle();
Sheet sheet = workbook.createSheet("药材模板");
sheet.protectSheet("");
//下拉框
for(ExcelDropDownDto dropDownDto : dropDownDtos){
addValidate2Cell(sheet, dropDownDto.getFirstRow(), dropDownDto.getLastRow(), dropDownDto.getFirstCol(), dropDownDto.getLastCol(), dropDownDto.getValues());
}
//处理表头
Row row = sheet.createRow(0);
Cell cell = null;
for(int i = 0; i < headerRow.length; i++){
cell = row.createCell(i);
cell.setCellValue(headerRow[i]);
cell.setCellStyle(alterableStyle);
}
//处理表数据
T inStockDto = null;
Field[] fields = null;
Field field = null;
for(int i = 1; i <= inStockDtos.size(); i++){
row = sheet.createRow(i);
inStockDto = inStockDtos.get(i-1);
java导出excel(锁定指定列,下拉框)
最新推荐文章于 2024-08-15 02:05:40 发布
本文介绍了如何使用Java进行Excel文件的导出操作,并重点讲解了如何锁定工作表中的特定列,以及设置下拉列表选项,以实现数据验证和增强用户体验。内容包括使用Java POI库进行Excel操作的关键代码示例和步骤解析。
摘要由CSDN通过智能技术生成