<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    幸せのちから

    平凡的世界
    看似平常實崎嶇
    成如容易卻艱辛

    Chapter 7. ExportTag

    Chapter 7. ExportTag

    7.1. 引言

    eXtremeTable具有導出不同格式文件的功能,導出的數據為過濾和排序后的所有結果集, 分頁不會影響返回的結果集。換句話說,如果表數據分多頁顯示,那么所有頁的數據都將被導出。 導出的格式為Microsoft Excel (OpenOffice Calc)、PDF和CSV。

    使用ExportXlsTag導出Microsoft Excel (OpenOffice Calc):

    <ec:table
    items="presidents"
    action="${pageContext.request.contextPath}/presidents.run"
    />
    <ec:exportXls
    fileName="presidents.xls"
    tooltip="Export Excel"/>
    ...
    </ec:table>

    使用ExportPdfTag導出PDF。所有要做的就是指定fileName屬性和一些樣式屬性:

    <ec:table
    items="presidents"
    action="${pageContext.request.contextPath}/presidents.run"
    />
    <ec:exportPdf
    fileName="presidents.pdf"
    tooltip="Export PDF"
    headerColor="blue"
    headerBackgroundColor="red"
    headerTitle="Presidents"/>
    ...
    </ec:table>

    使用ExportCsvTag導出CSV。當使用CSV導出是默認的分隔符為‘,’(comma)。你可以使用 delimiter屬性來指定為其他的符號。下面為指定‘|’(pipe)為CSV分隔符的示例:

    <ec:table
    items="presidents"
    action="${pageContext.request.contextPath}/presidents.run"
    />
    <ec:exportCsv
    fileName="presidents.txt"
    tooltip="Export CSV"
    delimiter="|"/>
    ...
    </ec:table>

    你可以通過指定view屬性來導出其他文件格式。eXtremeTable視圖實現View接口并是 可插接的。參閱View章了解更多信息。

    7.2. 擴展屬性

    大多數標簽包含一系列的固定屬性,這樣那些已經實現的功能能夠被使用。然而,eXtremeTable具有一種更具彈性的架構, 你可以添加自己的標簽屬性實現更多的定制工作。此外,eXtremeTable提供了非常清晰的鉤子(hooks)允許你得到那些定制的 標簽屬性來做一些你需要的工作。

    通過addExtendedAttributes()方法將擴展屬性包含到eXtremeTable里:

    public void addExtendedAttributes(Export export);

    如果方法被覆蓋ExportTag將調用它。你需要做的就是擴展ExportTag,覆蓋addExtendedAttributes()方法,然后添加自己 的屬性到導出對象中。

    一個定制的ExportCsvTag示例如下:

    public class ExportCsvTag extends ExportTag {
    private String delimiter;

    public String getDelimiter() {
    return delimiter;
    }

    public void setDelimiter(String delimiter) {
    this.delimiter = delimiter;
    }

    public void addExtendedAttributes(Export export) {
    String view = export.getView();
    if (StringUtils.isBlank(view)) {
    export.setView(TableConstants.VIEW_CSV);
    export.setImageName(TableConstants.VIEW_CSV);
    }
    export.addAttribute(CsvView.DELIMITER, getDelimiter());
    }
    }

    現在你添加了屬性值到Export對象,下面是CsvView實現的一部分:

    public class CsvView implements View {
    public void body(TableModel model, Column column) {
    Export export = model.getExportHandler().getCurrentExport();
    }
    }

    另外,你也可以定制自己的標簽和自己的TLD文件。你不需要修改extremecomponents.tld文件。 你能象使用eXtremeTable里的標簽一樣使用自己的標簽,除了使用你自己標簽的參照。假如你的標簽參照為mycompany 并且標簽為customExport,你可以像下面一樣使用他們:

    <ec:table
    items="presidents"
    action="${pageContext.request.contextPath}/public/demo/presidents.jsp"
    title="Presidents"
    >
    <mycompany:customExport fileName="presidents.txt" delimiter="|"/>
    ...
    </ec:table>

    posted on 2006-02-27 14:28 Lucky 閱讀(615) 評論(0)  編輯  收藏 所屬分類: extremeComponents

    <2006年2月>
    2930311234
    567891011
    12131415161718
    19202122232425
    2627281234
    567891011

    導航

    隨筆分類(125)

    文章分類(5)

    日本語

    搜索

    積分與排名

    最新隨筆

    最新評論

    主站蜘蛛池模板: 亚洲黄色三级网站| 久久亚洲国产精品123区| 国产亚洲婷婷香蕉久久精品| 一区二区免费在线观看| www在线观看播放免费视频日本| 国内一级一级毛片a免费| 亚洲毛片基地4455ww| 国产片AV片永久免费观看| 成人黄色免费网址| 亚洲人成在线中文字幕| 一级毛片正片免费视频手机看| 亚洲精品国产日韩无码AV永久免费网 | 精品亚洲成a人片在线观看少妇 | 中文字幕天天躁日日躁狠狠躁免费| 亚洲AV本道一区二区三区四区| 亚洲狠狠成人综合网| 成人在线视频免费| 亚洲av无码精品网站| 久久久久久毛片免费播放| 亚洲免费黄色网址| 暖暖免费高清日本一区二区三区 | 亚洲国产成人精品无码区在线观看| 鲁丝片一区二区三区免费 | 1024免费福利永久观看网站| 亚洲综合一区国产精品| 9久久免费国产精品特黄| 最近免费中文字幕视频高清在线看 | 日本免费一二区在线电影| 亚洲第一视频在线观看免费| 亚洲av永久无码精品网站| 久久精品免费全国观看国产| 国产区图片区小说区亚洲区| 亚洲另类激情综合偷自拍图| 2021久久精品免费观看| 爱情岛论坛亚洲品质自拍视频网站| 亚洲日本韩国在线| 猫咪免费观看人成网站在线| 女人18毛片a级毛片免费| 国产成人无码免费网站| 亚洲精品福利你懂| 亚洲午夜久久久久久久久电影网|