咱們在開發的時候,總會遇到需要通過代碼操作辦公軟件的情況,而excel與word的操作最為頻繁。
當然我們Java程序員可以選擇JXL或者POI來完成相應的Excel操作,但是大家用過都知道,有些地方感覺還是不夠簡單,不那么盡如人意。
今天給大家介紹一個EasyPoi,就算我們不會底層的POI,也可以非常輕松的完成Excel的操作。EasyPoi,主打簡單,不過功用依然OK(絕對夠用)。現在我們就來嘗試一步一步還進行它的入門學習:
基本功能搭建
(注:在使用之前,需要自己先搭建好相應的Maven環境)
1.在Maven中引入easypoi
<!-- easypoi的支持 --> <dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-base</artifactId> <version>3.2.0</version> </dependency> <dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-web</artifactId> <version>3.2.0</version> </dependency> <dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-annotation</artifactId> <version>3.2.0</version> </dependency>
2.准備一個類
@Excel:代表這個字段要生成到excel中去
name:這個excel的表頭名稱
width:這一列的寬度設置
public class Employee implements Serializable { private Long id; @Excel(name = "用戶名稱") private String username; @Excel(name = "郵件",width = 20) private String email; // 省略了getter,setter }
3. 功能測試
@Test public void testExcel() throws Exception{ //准備員工數據 Employee e1 = new Employee(); e1.setId(1L); e1.setUsername("張三"); e1.setEmail("zhang@qq.com"); Employee e2 = new Employee(); e2.setId(2L); e2.setUsername("李四"); e2.setEmail("li@qq.com"); List<Employee> list = new ArrayList<>(); list.add(e1); list.add(e2); /** * 進行相應的展出 * 參數1:一些基本配置(表頭等) * 參數2:導出的類型 * 參數3:導出的數據 */ Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), Employee.class, list); //保存數據 FileOutputStream fos = new FileOutputStream("emp.xls"); workbook.write(fos); fos.close(); }
最后效果