表格导出器

TableExporter 接口用于下载 TableDataGrid 内容。

TableExporter 接口有两个标准的实现:ExcelExporterJsonExporter 类。

ExportActionsetTableExporter() 方法可以设置 TableExporter 的一个实例。

自定义表格导出器

你可以自定义一个 TableExporter 接口的实现,用于导出你需要的格式。

声明自定义导出器的示例如下:

@Component("ui_CustomExporter")
@Scope(BeanDefinition.SCOPE_PROTOTYPE)
public class CustomExporter implements TableExporter {
    @Override
    public void exportTable(Downloader downloader, Table<Object> table, ExportMode exportMode) {
        //your custom logic
    }

    @Override
    public void exportDataGrid(Downloader downloader, DataGrid<Object> dataGrid, ExportMode exportMode) {
        //your custom logic
    }

    @Override
    public String getCaption() {
        return "custom";
    }

    @Override
    public void addColumnValueProvider(String columnId, Function<ColumnValueContext, Object> columnValueProvider) {
        //your custom logic
    }

    @Override
    public void removeColumnValueProvider(String columnId) {
        //your custom logic
    }

    @Nullable
    @Override
    public Function<ColumnValueContext, Object> getColumnValueProvider(String columnId) {
        //your custom logic
        return null;
    }
}

ExcelExporter

使用 ExcelExporter 类将 TableDataGrid 内容导出为 Excel 格式。

ExcelExporter 用在标准的 ExcelExportAction 操作中。

JsonExporter

使用 JsonExporter 类将 TableDataGrid 内容导出为 JSON 格式。

JsonExporter 用在标准的 JsonExportAction 操作中。