




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、一、 JavaReport介紹JavaReport主要有如下優(yōu)點。(1)支持實時的、動態(tài)的Web統(tǒng)計報表JavaReport所展示的報表是動態(tài)的報表。所有的數(shù)據(jù)都是實時的數(shù)據(jù);所有的統(tǒng)計圖也是動態(tài)生成的。報表里面的數(shù)據(jù)源可從數(shù)據(jù)庫中即時查詢產生,適合于對實時統(tǒng)計要求高的應用系統(tǒng)。(2)接口豐富,對圖表提供良好的支持JavaReport提供了豐富的應用程序接口、減少代碼復用、靈活的圖表形式、即時圖表生成、更短的生成時間等。Java報表對圖表有良好的支持,可以生成柱圖、餅圖和折線圖等十幾種圖表。(3)報表可導出成各種格式的文檔JavaReport在報表展現(xiàn)方面表現(xiàn)優(yōu)異,能實現(xiàn)Word,Excel,
2、PDF,CSV等格式精確導出等功能,并提供了全部的頁面與打印控制。(4)開發(fā)簡便,程序員只須編寫少量程序代碼有許多的問題在JavaReport組件已經解決,如報表的導出功能、打印功能和數(shù)據(jù)的分頁處理等。在很多B/S結構體系的系統(tǒng)開發(fā)時,分頁是開發(fā)過程中要重點考慮的問題。但在JavaReport中,就不需要考慮上下翻頁,跨頁分頁,因為這些問題報表引擎已經實現(xiàn)了。在設計報表的過程中,把Report類當作容器類,統(tǒng)計圖類,表格類,標簽類,圖片類等,把它們當作組件類。至于跨頁分頁,上下翻頁由報表引擎自動完成。JavaReport系統(tǒng)中有自動跨頁分頁的功能,當表格超過當前頁的大小時,系統(tǒng)會自動把接著部分
3、放到下一頁。報表設計在開發(fā)過程中是感覺不到要跨頁的存在,只有一個全部數(shù)據(jù)完整的表格對象。如果把引入圖片文件加入到報表中,可使用報表系統(tǒng)的Report類,通過這個類的addImage()方法把Image對象加進來,如果需要自定義圖像,可通過第三方畫圖程序(例如是JFreeChart程序)生產需要的統(tǒng)計圖/圖片,然后再把圖像加到報表中去。本書中使用的JavaReport版本是V3.0,JavaReport根據(jù)客戶的應用需要,按照功能和性能的等級,分成三個版本:專業(yè)版,服務器版,企業(yè)版。本書使用企業(yè)版。JavaReport三個版本產品都是免費使用的。也就是說這三個版本都不需要購買License許可,
4、可以自由使用JavaReport的所有功能。免費提供報表在Web展示功能,表和圖怎樣混合功能,跨頁分頁功能,導出電子文檔Word,PDF,Excel,CSV,HTML等諸多功能。專業(yè)版客戶(Client)的IP最接數(shù)限制為10個,也就是JavaReport同時并行處理線程的最大數(shù)受限制。限制是為了避免系統(tǒng)資源占用過大,使系統(tǒng)反應遲鈍。該版本適合中小型的應用系統(tǒng),保障應用系統(tǒng)正常運行。服務器版在最接數(shù)沒有受限,它能充分發(fā)揮服務器的個部分硬件設備的作用;相對要求服務器的設備配置高,保障最優(yōu)性能效率。該版本適合大中型的應用系統(tǒng)使用。企業(yè)版提供垃圾回收機制管理,自動處理在存中無用對象的引用;支持多服務
5、器處理模式,提供在多個服務器的集群功能和服務器之間負載均衡功能。提高服務器群的負載能力和和快速響應能力。該版本適合負載繁重的應用系統(tǒng)使用。二、 安裝JavaReport找到JavaReport-V3-Enterprise-Released.jar這個Jar文件,把這個文件的路徑加入到classpath系統(tǒng)變量中,或拷貝到當前Web應用的WEB-INFlib目錄下,或拷貝到Tomcat5的安裝目錄的commonlib目錄中;第一種方法和第三種方法對所有Web應用有效,而第二種方法僅對當前Web應用有效。好了,至此,JavaReport就算安裝完畢了。接下來,繼續(xù)介紹JavaReport。三、 相
6、關類介紹下面給出Web報表顯示時的情況,如圖17-11所示。在這個圖中,對報表的顯示情況一目了然,再介紹常用的類理解起來就會比較清晰了。JavaReport的組件包中有許多的類,體系龐大而復雜,在這里無法一一介紹,僅列出一些常用的類來作出說明,有興趣的可參考詳細的API手冊。(1)WebReportEngine類即com.javareport. .WebReportEngine,這個類是整個JavaReport中的Web引擎的開發(fā)接口。所有的JSP或Servlet從這個類繼承下來,覆蓋createReport()函數(shù)就實現(xiàn)基本的報表開發(fā)工作。WebReportEngine是JavaReport
7、的Servlet或JSP的開發(fā)接口,是JSP或Servlet的父類,報表系統(tǒng)在應用中的程序從此處繼承下來,可以根據(jù)需要調整接口容。部分函數(shù)可以適當刪除。在開發(fā)中一般是實現(xiàn)createReport()函數(shù)就可以,形成實時動態(tài)報表就是在這個函數(shù)里實現(xiàn)的。剩下的工作(怎樣在Web上顯示,怎樣形成Work,PDF文件,等)交給報表引擎自動實現(xiàn)。如果是在JSP中,在頁頭部分應加入如下語句:如果是Servlet,相應的Servlet類聲明時語句如下:public class Servlet類名稱 extends WebReportEngine? createReport()方法原型如下:public Re
8、port createReport(javax.servlet. . ServletRequest request) throws java.lang.Exception此方法用于建立報表,并返回報表的實例。這個報表實例可以在Web上顯示,同時也可以導出Word,Excel, PDF, CSV,HTML等格式的文檔以供使用。參數(shù)request可用于獲取所有的動態(tài)請求的數(shù)據(jù)。? validate()此方法用于對上一個頁面Form提交的參數(shù)進行檢查,由于實時報表需要動態(tài)的參數(shù),在這里進行數(shù)據(jù)校驗。方法原型如下:public java.lang.String validate(javax.servl
9、et. . ServletRequest request)其中,參數(shù)request可用于獲取所有的動態(tài)請求的數(shù)據(jù);方法的返回值為null時代表通過,其他容則為參數(shù)錯誤的提示信息。? getStartScript()方法用于構造報表容在Web頁面上顯示之前執(zhí)行的JavaScript或VBScript腳本,如果要定制則要重載這個方法。方法原型如下:public java.lang.String getStartScript(javax.servlet. . ServletRequest request)其中,參數(shù)request可用于獲取所有的動態(tài)請求的數(shù)據(jù);方法返回值為null時代表沒有腳本容。?
10、 getEndScript()方法用于構造報表容在Web頁面上顯示之后執(zhí)行的JavaScript或VBScript腳本,如果要定制則要重載這個方法。方法原型如下:public java.lang.String getEndScript(javax.servlet. . ServletRequest request)其中,參數(shù)request可用于獲取所有的動態(tài)請求的數(shù)據(jù);方法返回值為null時代表沒有腳本容。? getToolbarScript()方法用于定制Web報表在頁面首部顯示的工具欄為標準的樣式(上下翻頁,導出文件),可以在此擴展工具欄的容,如:添加公司主頁的,返回上一層的“返回”按鈕,
11、如果要定制則要重載這個方法。方法原型如下:public java.lang.String getToolbarScript(javax.servlet. . ServletRequest request)其中,參數(shù)request可用于獲取所有的動態(tài)請求的數(shù)據(jù);方法返回值為null時代表不添加容。? isShowToolbar()如果不想在頁面上顯示報表工具欄,可重載這個方法,并設定返回值為false。需要注意的是,如果是多頁報表,上下翻頁按鈕就無法使用。方法原型如下:public boolean isShowToolbar()方法的返回值是是否顯示工具欄的布爾值標志。? getAllEchoB
12、utton()方法用于自定義顯示在Web頁面中的報表導出文件的按鈕,比如應用中只導出PDF文件,其他的不需要,就可以這里設定。按鈕值從Word按鈕開始是(1,2,4,8,.),需要顯示的按鈕則將它們的值相加就可以了。默認情況下工具欄上的按鈕如圖17-12所示:圖17-12 默認情況下工具欄上的按鈕方法原型如下:public int getAllEchoButton()方法的返回值是顯示按鈕對應的和值。要作自定義,需要重載這個方法,并將返回值設為要顯示的按鈕對應的和值。(2)Report類即com.javareport.beans.Report,報表類。這個類的對象用于代表一報表,是所有報表元素
13、的容器,這是整個系統(tǒng)的核心,也是在瀏覽器上顯示和生成電子文檔(Word,Excel,PDF,Html等)的基礎。? addHeaderSeparator()方法用于在報表的頁眉添加一條橫直線。方法原型如下:public java.lang.String addHeaderSeparator(int num)其中,參數(shù)num表示橫直線的粗細程度,以自然數(shù)表示,數(shù)字越大表示線越粗。? addHeaderSpace()此方法用于在頁眉中添加若干個空格。方法原型如下:public java.lang.String addHeaderSpace(int num)其中,參數(shù)num是要添加的空格的個數(shù)。?
14、addHeaderTab()方法用于在頁眉中添加若干個Tab鍵,Tab鍵跟空格鍵一樣是不可見的,默認每個Tab為8個空格。方法原型如下:public java.lang.String addHeaderTab(int num)其中,參數(shù)num是要添加的Tab鍵的個數(shù)。? addHeaderBreak()在頁眉中添加一個換行符號,緊跟后面的容則從下行第一個字符的位置開始。方法原型如下:public java.lang.String addHeaderBreak()? addHeaderText()在頁眉中添加文本信息容,緊跟后面的容則從下行第一個字符的位置開始。方法原型如下:public jav
15、a.lang.String addHeaderText(java.lang.String text)其中,參數(shù)text是要添加的文本信息容。其中,P代表當前頁,N代表總頁數(shù),如:“第P頁,共N頁”。? addChart()在報表中添加圖表信息容。方法原型如下:public java.lang.String addChart(ChartImpl chart)其中,參數(shù)chart是要添加的圖表,圖表類ChartImpl是JavaReport的核心模塊,各種各樣統(tǒng)計圖由圖表類生成。? setCurrentFont()設置報表當前的字體。原型如下:public void setCurrentFont(
16、java.awt.Font font)其中,參數(shù)是要設置的字體對象,為Java中java.awt.*包中的Font對象。? setCurrentBackground()設置報表當前的背景顏色。原型如下:public void setCurrentBackground(java.awt.Color color)其中,參數(shù)color是要添加的圖形對象,為Java中java.awt.*包中的color對象。? setCurrentForeground()設置報表當前的前景顏色。原型如下:public void setCurrentForeground(java.awt.Color color)其中,
17、參數(shù)color是要添加的圖形對象,為Java中java.awt.*包中的color對象。? addImage()在報表中添加圖片信息容。原型如下:public java.lang.String addImage(java.awt.Image image)其中,參數(shù)image是要添加的圖形對象,為Java中java.awt.*包中的Image對象。? addBullet()這個方法有兩種形式:public java.lang.String addBullet()或public java.lang.String addBullet(java.awt.Image image)該方法用于添加項目符號的
18、表示符號。第一種形式添加默認的項目符號(圓點)的表示符號,第二種形式用自定義的圖片容代替默認的圓點容。參數(shù)image是要添加的圖形對象,為Java中java.awt.*包中的Image對象。? addNewline()方法用于在報表中添加一個換行符號,緊跟后面的容則從下行第一個字符的位置開始。方法原型如下:public java.lang.String addNewline(int num)其中,參數(shù)num代表換行的數(shù)量,即多次換行。? addPageBreak()方法用于在報表中添加換頁的標識符號,當報表系統(tǒng)做分頁顯示時,遇到這個符號時,則緊跟后面的容在新的一頁開始顯示。方法原型如下:pub
19、lic java.lang.String addPageBreak()? addSeparator()在報表中添加一條橫直線。方法原型如下:public java.lang.String addSeparator(int num)其中,參數(shù)num表示橫直線的粗細程度,以自然數(shù)表示,數(shù)字越大表示線越粗。? addSpace()添加若干個空格。方法原型如下:public java.lang.String addSpace(int num)其中,參數(shù)num代表空格的個數(shù)。? addTab()在報表中添加若干個Tab鍵,Tab鍵跟空格鍵一樣是不可見的,默認每個Tab鍵為8個空格。方法原型如下:publ
20、ic java.lang.String addTab(int num)其中,參數(shù)num是要添加的Tab鍵的個數(shù)。? addText()在報表中添加文本信息容,緊跟后面的容則從下行第一個字符的位置開始。方法原型如下:public java.lang.String addText(java.lang.String text)其中,參數(shù)text為要添加的文本信息容。? addTable()添加報表中的表格信息容。方法原型如下:public java.lang.String addTable(Table table)其中,參數(shù)table是要添加的表格,有關Table類的容詳見本節(jié)中(3)中的容。? a
21、ddFooterSeparator()在頁尾添加一條橫直線。方法的原型如下:public java.lang.String addFooterSeparator(int num)其中,參數(shù)num為橫直線的粗細程度,以自然數(shù)表示,數(shù)字越大表示線越粗。? addFooterSpace()在頁尾添加若干個空格。方法的原型如下:public java.lang.String addFooterSpace(int num)其中,參數(shù)num代表要添加的空格的個數(shù)。? addFooterTab()在頁尾添加若干個Tab鍵,Tab鍵跟空格鍵一樣是不可見的,默認每個Tab鍵為8個空格。方法的原型如下:publi
22、c java.lang.String addFooterTab(int num)其中,參數(shù)num為要添加的Tab鍵的個數(shù)。? addFooterTab()在頁尾添加一個換行符號,緊跟后面的容則從下行第一個字符的位置開始。public java.lang.String addFooterBreak()? addFooterText()在頁尾添加文本信息容,緊跟后面的容則從下行第一個字符的位置開始。方法的原型如下:public java.lang.String addFooterText(java.lang.String text)其中,參數(shù)text是要添加的文本信息容。其中,P代表當前頁,N代表
23、總頁數(shù),如:“第P頁,共N頁”。(3)Table類即com.javareport.beans.Table,表格類。這個類的對象屬于報表對象Report中的元素。表格在報表中是不可缺少的,整齊排列著數(shù)據(jù)容。表格單元里面的容可以是文本容,也可以是圖形和其他元素,同時這個對象也是表套表的基礎。JavaReport會自動處理表格的跨頁、分頁問題和新頁中的表頭顯示問題,開發(fā)過程中把它想象成連續(xù)的就可以了。? Table()Table類的構造函數(shù),用于實例化一個表格對象,方法的原型如下:public Table(java.lang.Object data)其中,參數(shù)data為填充表格容的二維數(shù)組。? se
24、tRowAlignment()設置指定行的對齊方式。方法的原型如下:public void setRowAlignment(int row,int align)其中,參數(shù)row為要設置對齊方式的行的編號;參數(shù)align為要對齊的方式(左,中,右;上,中,下;同時設置左右上下,將兩個值相加就可以了)。? setRowBackground()設置指定行的背景顏色,形式如下:public void setRowBackground(int row,java.awt.Color color)其中,參數(shù)row為要設置背景顏色的行的編號;參數(shù)color為要設置的顏色對象,為Java中java.awt.*包
25、中的Color對象。? setRowBorder()設置表格中所有行的邊界外觀樣式。方法的原型如下:public void setRowBorder(int style)其中,參數(shù)style為邊界外觀樣式,即表格單元之間的邊界線的粗細情況,該值為整數(shù),值越大代表線越粗,0代表不顯示。? setRowBorderColor()設置表格中指定行的邊界的顏色,方法的原型如下:public void setRowBorderColor(int row,java.awt.Color color)其中,參數(shù)row為要設置邊界顏色的行的編號;參數(shù)color是要設置的顏色對象,為Java中java.awt.*
26、包中的Color對象。? setRowFont()設置表格中指定行容的字體。方法的原型如下:public void setRowFont(int row,java.awt.Font font)其中,參數(shù)row為要設置字體的指定行;參數(shù)font是要設置的字體對象,為Java中java.awt.*包中的Font對象。? setRowForeground()設置表格中指定行的前景顏色,方法的原型如下:public void setRowForeground(int row,java.awt.Color color)其中,參數(shù)row是要設置前景顏色的行的編號;參數(shù)color是要設置的顏色對象,為Jav
27、a中java.awt.*包中的Color對象。? setRowHeight()設置表格中指定行的高度。方法的原型如下:public void setRowHeight(int row,int height)其中,參數(shù)row是要設置高度的行的編號;參數(shù)height是要設置的行的高度。? setColAlignment()設置表格中指定列的對齊方式,方法的原型如下:public void setColAlignment(int col,int align)其中,參數(shù)col是指定對齊方式的列;參數(shù)align指出對齊的方式,依次為橫向左,中,右;豎向上,中,下(如果要同時設置左右上下,可將兩個值相加就
28、可以了),值可以用數(shù)字表示,也可以用Table類的常量來表示(實質上Table類實現(xiàn)了com.javareport.ReportConstants接口,所有常量在ReportConstants接口中作了定義),其常量與值的對應情況如下:Table.H_LEFT:橫向左對齊,值為1;Table.H_CENTER:橫向居中對齊,值為2;Table.H_RIGHT:橫向右對齊,值為4;Table.V_TOP:豎向上對齊,值為8;Table.V_CENTER:豎向居中對齊,值為16;Table.V_BOTTOM:豎向下對齊,值為32。? setColBackground()設置表格中指定列的背景顏色。
29、方法的原型如下:public void setColBackground(int index,java.awt.Color color)其中,參數(shù)index是指定的列;參數(shù)color是要設置的顏色對象,為Java中java.awt.*包中的Color對象。? setColBorder()設置表格的所有列的邊界外觀樣式,方法的原型如下:public void setColBorder(int style)其中,參數(shù)style指定邊界外觀樣式,即表格單元之間邊界線的粗細情況,該值為整數(shù),值越大代表線越粗,0代表不顯示。? setColBorder()設置表格中指定列的邊界外觀樣式。方法的原型如下:
30、public void setColBorder(int index,int style)其中,參數(shù)int為指定的列;參數(shù)style指定邊界外觀樣式,即表格單元之間邊界線的粗細情況,該值為整數(shù),值越大代表線越粗,0代表不顯示。? setColBorderColor()設置表格中指定列的邊界的顏色,方法的原型如下:public void setColBorderColor(int index,java.awt.Color color)其中,參數(shù)index為指定的列;參數(shù)color是要設置的顏色對象,為Java中java.awt.*包中的Color對象。? setColFont()設置表格中指定列
31、容的字體。方法的原型如下:public void setColFont(int index,java.awt.Font font)其中,參數(shù)index為指定的列;參數(shù)font是要設置的字體對象,為Java中java.awt.*包中的Font對象。? setColForeground()設置表格中指定列的前景顏色,方法的原型如下:public void setColForeground(int index,java.awt.Color color)其中,參數(shù)index為指定的列;參數(shù)color是要設置的顏色對象,為Java中java.awt.*包中的Color對象。? setColWidth()
32、設置表格中指定列的寬度。方法的原型如下:public void setColWidth(int index,int width)其中,參數(shù)index是要設置高度的列的編號;參數(shù)width為要設置的列的寬度。? setData()給表格填充數(shù)據(jù)。表格單元的數(shù)據(jù)可以是數(shù)據(jù),也可以是其他元素。方法的原型如下:public void setData(java.lang.Object data)其中,參數(shù)data是填充表格容的二維數(shù)據(jù)。? setAlignment()設置表格中所有單元的對齊方式。方法的原型如下:public void setAlignment(int align)其中,參數(shù)align是
33、要對齊的方式,具體如何取值請參見setColAlignment()方法。? setColAutoSize()設置表格中所有列是否自動調整寬度。方法的原型如下:public void setColAutoSize(boolean flag)其中,參數(shù)flag是布爾型的標志值。? setRowAutoSize()設置表格中所有行是否自動調整寬度。方法的原型如下:public void setRowAutoSize(boolean flag)其中,參數(shù)flag是布爾型的標志值。? setFont()設置所有表格單元的字體。方法的原型如下:public void setFont(java.awt.Fo
34、nt font)其中,參數(shù)font是要設置的字體對象,為Java中java.awt.*包中的Font對象。? setHeaderColCount()設置表格列表頭的數(shù)目。方法的原型如下:public void setHeaderColCount(int count)其中,參數(shù)count為列表頭的數(shù)目。? setHeaderRowCount()設置表格行表頭的數(shù)目。方法的原型如下:public void setHeaderRowCount(int count)其中,參數(shù)count為行表頭的數(shù)目。? setRowHeight()設置行的默認高度。方法的原型如下:public void setRow
35、Height(int height)其中,參數(shù)height為默認的高度值。? setCellSpan()合并表格單元,即把連續(xù)的多個表格單元和并成為一個表格。方法的原型如下:public void setCellSpan(int x,int y,java.awt.Dimension dimension)其中,參數(shù)x為合并表格左上角的表格的坐標x值;參數(shù)y為合并表格的左上角的表格的坐標y值;參數(shù)dimension合并的矩型框的大小,即跨越表格的面積。? setLineWrap()設置表格單元的容超寬時是否換行顯示。方法的原型如下:public void setLineWrap(boolean f
36、lag)其中,參數(shù)flag是布爾型的標志值。? setFont()設置指定表格單元容的字體。方法的原型如下:public void setFont(int x,int y,java.awt.Font font)其中,參數(shù)x是要設置字體表格單元的坐標x值;參數(shù)y是要設置字體表格單元的坐標y值;參數(shù)font是要設置的字體對象,為Java中java.awt.*包中的Font對象。? setForeground()設置指定表格單元的前景顏色。方法的原型如下:public void setForeground(int x,int y,java.awt.Color color)其中,參數(shù)x是要設置顏色的表
37、格單元的坐標x值;參數(shù)y是要設置顏色的表格單元的坐標y值;參數(shù)color是要設置的顏色對象,為Java中java.awt.*包中的Color對象。? setBackground()設置指定表格單元的背景顏色。方法的原型如下:public void setBackground(int x,int y,java.awt.Color color)方法參數(shù)的含義同setForeground()方法。(4)Chart類即com.javareport.beans.Chart,圖表類。這個類的對象屬于報表對象Report中的元素。統(tǒng)計圖在報表中不可缺少的,使用戶瀏覽更加直觀。可用這個類生成十幾種報表統(tǒng)計圖。
38、? Chart()Chart類的構造函數(shù),用于實例化一個圖表對象。方法的原型如下:public Chart(java.lang.Number data)其中,參數(shù)是用于初始化圖形中數(shù)據(jù)的二維數(shù)字型數(shù)據(jù)數(shù)組。? setLabel()方法用于設置圖表中指定的單元數(shù)據(jù)的顯示標簽。方法的原型如下:public void setLabel(int i,java.lang.String label)其中,參數(shù)I是需要設置標簽的數(shù)據(jù)單元的下標值;參數(shù)label指定對應的單元數(shù)據(jù)的標簽。? setLabels()設置圖表中的單元數(shù)據(jù)顯示的標簽。方法的原型如下:public void setLabels(jav
39、a.lang.String labels)其中,參數(shù)labels是單元數(shù)據(jù)的標簽字符串數(shù)組。? setData()設置圖表中指定的單元或所有單元的數(shù)據(jù)。方法的原型如下:public void setData(int i,int j,java.lang.Number data)或public void setData(java.lang.Number data)第一種形式參數(shù)說明如下:參數(shù)i指定的二維數(shù)據(jù)單元的坐標x的值;參數(shù)j指定的二維數(shù)據(jù)單元的坐標y的值;參數(shù)data用于給指定的單元賦值,數(shù)據(jù)可以是Byte, Double, Float, Integer, Long, Short,這些數(shù)據(jù)類
40、型都是Number類的子類。第二種形式參數(shù)說明如下:參數(shù)data是一個二維的數(shù)據(jù),數(shù)據(jù)可以是Byte、Double、Float、Integer、Long、Short。? setStyle()設置統(tǒng)計圖的類型,統(tǒng)計圖可以是:曲線圖,百分比圖等。方法的原型如下:public void setStyle(int type)其中,參數(shù)type是指定的統(tǒng)計圖類型,總共有十多種,常用常量來表示,常用的有以下幾種。Chart.CHART_PIE3D:立體餅圖Chart.CHART_STACKBAR3D:立體條形圖Chart.CHART_CURVE:曲線圖Chart.CHART_LINE:線圖Chart.CH
41、ART_POINT:點圖Chart.CHART_INVERTED_CURVE:反向曲線圖Chart.CHART_INVERTED_LINE:反向線圖Chart.CHART_INVERTED_STACKBAR:橫向的條形圖? setShowValue()設置統(tǒng)計圖中顯示時是否把具體的數(shù)值也顯示出來。方法的原型如下:public void setShowValue(boolean flag)其中,參數(shù)flag是一個布型型的標志值。(5)RsTable類即com.javareport.beans.RsTable,記錄集表格類。這個類的對象屬于報表對象Report中的元素。RsTable類具有Tabl
42、e類的全部功能,是針對統(tǒng)計報表中顯示記錄集是一個非常頻繁使用的動作而設計的,開發(fā)者使用它時能夠用幾行代碼就可把一個JDBC記錄集里的數(shù)據(jù)以表格形式列舉顯示出來。這個類與Table類有一樣之處,它們在外觀顯示風格上的方法是一樣的,因此這里不再介紹RsTable類的外觀顯示風格設置的方法,具體可參見Table類。? RsTable()RsTable類的構造函數(shù),用于實例化一個記錄集表格對象。方法原型如下:public RsTable(java.sql.ResultSet rs)或public RsTable(java.lang.String as,java.sql.ResultSet rs)其中,
43、參數(shù)rs是填充表格容的記錄集;參數(shù)as是記錄集中列的名稱映射表,比如記錄值中“ID”映射為“編號”,則報表的表頭名稱列顯示為“編號”。? setMapping()設置表頭與列名的映射關系。方法的原型如下:public void setMapping(java.lang.String as)其中,參數(shù)as是映射關系中的對照表,是一個二維數(shù)組。17.3.4 開發(fā)Web報表的方法(1)開發(fā)JSP報表的方法開發(fā)JSP時,自定義的JSP需要從WebReportEngine類繼承下來:這是一個開發(fā)的程序模板,一般情況下實現(xiàn)createReport()函數(shù)就可以,項目中報表的樣式和容就在這函數(shù)里實現(xiàn),因此它
44、是動態(tài)實時的表報,另外,還可以重載其他函數(shù),可根據(jù)需要而定。下面給出一個更詳細的JSP開發(fā)模板,以供參考。JSP報表開發(fā)模板(2)開發(fā)Servlet報表的方法開發(fā)Servlet的時候,自定義的servlet從WebReportEngine類繼承下來:import javax.servlet. .*;import .javareport.beans.*;public class ReportExam extends WebReportEngine public Report createReport( ServletRequest request) throws Exception 說明:在本書
45、中將詳細介紹JSP中開發(fā)報表的方法,Servlet開發(fā)報表的方法可自行完成。下面給出一個Servlet報表開發(fā)的詳細模板,以供參考。Servlet報表開發(fā)模板import javax.servlet. .*;import .javareport.beans.*;public class Template extendsWebReportEngine * 這是報表系統(tǒng)在應用中給開發(fā)人員的JSP模板文件,可以根據(jù)需要調整接口容。部分函* 數(shù)可以適當刪除。在開發(fā)中一般是實現(xiàn)createReport()函數(shù)就可以,形成實時動態(tài)報表* 就是在這個函數(shù)里實現(xiàn)的。剩下的工作(怎樣在Web上顯示,怎樣形成Wo
46、rk,PDF文件等) * 交給報表引擎自動實現(xiàn)。/* * 建立報表,返回報表的實例。這個報表實例可以在Web上顯示,同時也可以導出Word,Excel,* PDF,CSV,HTML等格式的文檔供使用。 */public Report createReport( ServletRequest request) throws Exception Report report = new Report(); report.addText(This is a template !); return report;/* * 這是對上一個頁面Form提交的參數(shù)進行檢查,由于實時報表需要動態(tài)的參數(shù),在這里進 * 行數(shù)據(jù)校驗。 * 返回值為null時代表通過,其他容則為參數(shù)錯誤的提示信息。 */public String validate( ServletRequest request) return null;/* 這是報表在Web上顯示時,容顯示出來前執(zhí)行的腳本,腳本容一般為JavaScript腳* 本或VBScript腳本。* 返回值為null時代表通過沒有腳本容。*/public String getStartScript( ServletRequest request) return null;/* 這是報表在Web上顯示時,容顯示出來后執(zhí)行的腳本,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 考試心態(tài)調整特許金融分析師考試試題及答案
- 證券投資中的人機結合分析試題及答案
- 2025年財務報告標準變動試題及答案
- 2025年CFA考試資本市場操作試題及答案
- 微生物分析報告的撰寫技巧試題及答案
- 2024年項目管理新挑戰(zhàn)及應對策略試題及答案
- 預備工作2025年證券從業(yè)資格證試題及答案
- 礦山安全應急預案與演練-石墨滑石考核試卷
- 2025年審計審查重點試題及答案
- 礦山環(huán)境管理與生態(tài)斷層監(jiān)測考核試卷
- 2023裝配式建筑標準化產品系列圖集(預制內墻條板)SJT 03-2023
- 遠動設備故障處理措施
- 《真空熱處理爐》課件
- 醫(yī)院檢驗科實驗室生物安全管理手冊
- 企業(yè)財務管理優(yōu)化方案
- NB-T 47013.2-2015 承壓設備無損檢測 第2部分-射線檢測
- 實用版建筑工程工程合同模板
- 新型馬路劃線機設計
- 《兒科學》課件第9章第九節(jié) 腹瀉病
- 小學生主題班會 拒絕作弊+誠信考試+宣傳教育 課件(共28張PPT)
- 職業(yè)病危害與防治培訓PPT模板(含完整內容)13
評論
0/150
提交評論