<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)

    日本語

    搜索

    積分與排名

    最新隨筆

    最新評論

    主站蜘蛛池模板: 中国一级全黄的免费观看| 四虎影视永久免费视频观看| 免费高清在线影片一区| 亚洲国产一区二区a毛片| 在线综合亚洲欧洲综合网站 | 国产高清免费观看| 亚洲国产成人91精品| 久久国产乱子精品免费女| 日韩一卡2卡3卡4卡新区亚洲| 亚洲性无码AV中文字幕| 青草草色A免费观看在线| 亚洲国产精品无码久久久蜜芽| 猫咪www免费人成网站| 国产成人精品免费视频大全麻豆| 久久亚洲中文字幕精品有坂深雪| 中文字幕手机在线免费看电影| 亚洲精品国产日韩无码AV永久免费网 | 亚洲偷自拍拍综合网| 国产高清对白在线观看免费91| 无码专区一va亚洲v专区在线| 黄页网站在线观看免费| 亚洲一区二区三区在线视频| fc2成年免费共享视频网站| 国外亚洲成AV人片在线观看| 精选影视免费在线 | 亚洲AV无码一区东京热久久| 97av免费视频| 亚洲国产精品久久久久秋霞小 | 国产高清对白在线观看免费91| 国产精品亚洲аv无码播放| 一区二区三区在线免费看| 亚洲香蕉久久一区二区三区四区| 免费无码看av的网站| 国产成人高清精品免费观看| 亚洲成在人天堂在线| 女人18特级一级毛片免费视频| 一级做a爱过程免费视| 亚洲精品白色在线发布| 免费观看四虎精品国产永久| a毛片全部播放免费视频完整18| 亚洲jjzzjjzz在线观看|