poi导出Excel 写入标题栏 以及 将数据库中数据进行导出 版本二

依赖请参考版本一
先说写入标题栏 java代码

public class PoiColumnTest {
    public static void main(String[] args) throws Exception{
//        准备数据
        List<String> titles = Arrays.asList("编号","姓名","图片","法号","状态");
//        1.创建工作簿对象
        HSSFWorkbook workbook = new HSSFWorkbook();
//        2.创建工作表
        HSSFSheet sheet = workbook.createSheet("guru");
//        3.创建一行
        HSSFRow titleRow = sheet.createRow(0);

        for (int i = 0; i < titles.size(); i++) {
            //        4.创建单元格
            HSSFCell cell = titleRow.createCell(i);
//        5.写入数据
            String s = titles.get(i);
            cell.setCellValue(s);
        }
//        6.输出到本地
        workbook.write(new FileOutputStream(new File("E://guru.xls")));
    }
}

效果
在这里插入图片描述
再说数据库中数据进行导出的java代码

@SpringBootTest(classes = {ShujiegouApplication.class})
@RunWith(SpringJUnit4ClassRunner.class)
public class PoiTestDataBase {

    @Autowired
    private SysColumnService sysColumnService;

//    @Autowired
//    private SysColumnMapper sysColumnMapper;

    @Test
    public void test1() throws Exception{
        /**
         * 获取数据库中的数据 填充在Excel表格中
         * @throws Exception
         */
//        准备数据
            List<String> titles = Arrays.asList("栏目Id","栏目名称","栏目父id值","菜单级别","跳转页面");
//        数据查询 上师全部的数据
            List<SysColumn> sysColumnAll = sysColumnService.getSysColumnAll();
//        List<SysColumn> sysColumnAll = sysColumnMapper.selectAll();

//        1. 新建一个HSSFWorkbook 对象
            HSSFWorkbook workbook = new HSSFWorkbook();

//          单元格样式对象  设置样式
            HSSFCellStyle cellStyle = workbook.createCellStyle();
            HSSFFont font = workbook.createFont();
            font.setColor((short)10);
            font.setFontName("宋体");
            cellStyle.setFont(font);

//        2. 新建一个HSSFSheet对象
            HSSFSheet sheet = workbook.createSheet("guru");
//        3. 写入标题栏数据
//            创建行
            HSSFRow titleRow = sheet.createRow(0);
            for (int i = 0; i < titles.size(); i++) {
//            创建单元格
                HSSFCell titleCell = titleRow.createCell(i);
//            添加样式
                titleCell.setCellStyle(cellStyle);
//            写入数据
                titleCell.setCellValue(titles.get(i));
            }

//        4. 写入上师数据
            for (int i = 0; i < sysColumnAll.size(); i++) {
                SysColumn sysColumn = sysColumnAll.get(i);
//            创建行
                HSSFRow row = sheet.createRow(i + 1);
//            创建单元格
                HSSFCell cell0 = row.createCell(0);
                cell0.setCellValue(sysColumn.getId());
                HSSFCell cell1 = row.createCell(1);
                cell1.setCellValue(sysColumn.getColumnName());
                HSSFCell cell2 = row.createCell(2);
                cell2.setCellValue(sysColumn.getParentId());
                HSSFCell cell3 = row.createCell(3);
                cell3.setCellValue(sysColumn.getColumnRank());
                HSSFCell cell4 = row.createCell(4);
                cell4.setCellValue(sysColumn.getEnName());

            }
//        5. 输出
            workbook.write(new FileOutputStream(new File("E://guruall.xls")));
        }
    }

效果
在这里插入图片描述

中间我用到了springboot中的Junit测试,

下篇博客我讲一下Junit测试。

这辈子坚持与不坚持都不可怕,怕的是独自走在坚持的道路上! 欢迎加入技术群聊!

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/taiguolaotu/article/details/107041566
今日推荐