日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iReport使用入门

發布時間:2023/12/18 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iReport使用入门 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、iReport?是什么

????iReport是一個能夠創建復雜報表的開源項目,并且它能調用JasperReports庫應用于任何一種Java應用程序。本身是分布式的且由符合GNU通用公共許可的百分之百純java編寫。

由于它豐富的圖形界面,你能夠很快的創建出任何一種你想要的報表。iReport能夠讓我們提高技術方面的信心,比如它能降低學習JasperReports的XML語法的難度,而且能夠為熟練的技術人員節省大量的時間并能開發出非常精細的報表。

?

二、iReport?的下載與安裝

JasperReport?的下載地址:http://jasperreports.sourceforge.net/index.html

iReport的下載地址:http://sourceforge.net/projects/ireport

可能有幾種不同的分類

iReport-x.x.x.zip?這是官方的zip格式的二進制文件。

iReport-x.x.x.tgz?這是官方的tar gz格式的二進制文件。

iReport-x-x-x-src.zip?這是官方的包含源代碼的zip格式的二進制文件。

x.x.x表明了iReport的版本號。每一種都包含必須使用的第三方的庫和程序及附加文件,例如模板和一些html格式的基礎教程。

?

三、iReport?的配置

iReport的初始化配置包括:設置所要查看運行后的文檔的格式;選擇語言;設置編譯后的文件目錄。我們要配置 iReport 必須運行剛剛安裝的 iReport。然后選擇菜單選項中工具選項(menu?Options → Tools.)。

首先出現如下圖的界面(圖1.1)。此選項卡是一些簡單常規的設置。

????????????????????????????????????????????????????????????????1.1

這個選項卡(1.2)是用來設置編譯后的文件存儲目錄,默認的目錄會在iReport的根目錄。一般情況下是要指定一個有效的目錄來保存編譯文件。這個目錄也可以是加載報表源時的目錄。筆者的文件存儲目錄是?D:"J2EE"iReport?,以后所有的報表文件都將被保存在這個目錄下。

????????????????????????????????????????????????????????????????1.2

這個選項卡(1.3)設置?iReport?編譯后用來預覽報表的外部程序。筆者這里只設定了?IE,其它沒有設定的編譯之后?iReport?會為你生成一個對應格式的文件保存在上面設置的默認目錄下,但不會打開。

????????????????????????????????????????????????????????????????1.3

?

四、創建?JDBC?連接

任何一種動態報表都需要一個數據源,iReport?支持任何一款關系型數據庫作為數據源。

首先我們來看一下怎么建立一個數據源的連接。點菜單(1.4),出現一個?Connections /Datasources?對話框。

??????????1.4

????????????????????1.5

筆者這里已經創建了兩個數據源。如果你是第一次使用?iReport?工具來作報表的話,那么你就要首先來創建數據源的連接。點擊New?新建一個數據源連接。將出現(1.6)一個?Connections properties?對話框。這里有很多種數據源類型,我們程序員常用的只有?Database JDBC connectionXML file data sourceJavaBeans set data sourceEJBQL connection?這幾種。其它的一般程序員很少用得到的。(呵呵…..這是筆者個人的看法)

??????????????????????????????????????????????????1.6

我們選擇?Database JDBC connection?后點擊?Next?出現一個數據源連接的配置屬性對話框(1.7)。以下是針對筆者的?Oracle?10?數據庫連接配置。

?????????????????????????????????? ???????????????1.7

配置好后我們需要測試一下是否連接成功。點擊?Test?進行測試如出現?Connectin test successful?則表示連接成功(1.8)

注意:這里有一個?Save password?復選框,如果你選種了此復選框,則它會將密碼保存到一個?.txt?文件里面,如果你的密碼不想被暴露話的話,建議不要選此復選框。

????????????????1.8

創建一個連接后此連接后,筆者的?iReport?就有三個數據源了(圖1.9)。

?????????????????????????????????????????????????????????1.9

注意:我們創建數據源連接時一定要有數據庫連接驅動的支持。iReport?只為我們符帶了一個?MySQL?的驅動包,并且不定符合你的?MySQL?數據庫的版本。所以我們連接任何一種關系型數據庫時都要將驅動拷貝到?iReport?的安裝根目錄下的?lib?目錄里。

?

?

五、第一個簡單的報表

第一個報表我們就采用?iReport?本身的報表精靈向導來創建一個簡單的。iReport Wizard?是一個用來一步步創建報表的工具。點擊(2.0)菜單檔案à報表清靈,將出現一個?iReport Wizard?對話框(2.1)

???????????2.0

iReport Wizard?工具可以根據你以往的模版進行報表的創建。也可選擇你已經配置好的數據庫連接作為此報表的數據源,然后編寫SQL語句或導入已有的SQL文件。即使你不會寫SQL語句也可以做出一個漂亮的報表出來,因為它有一個?Design…?按鈕(圖2.2),專門為一些不會寫SQL語句的人所設計的。

???????????????????????????????????????????????????????????????2.1

在此視圖中你可以選擇你要使用的表和表字段,并且它幫我們把表的關系給體現出來了。

????????????????????????????????????????????????????????????????2.2

下一步需要選擇我們要在報表中顯示的字段(2.3)

???????????????????????????????????????????????????????????????2.3

根據此向導我們可以創建四個組(事實它可以設置很多的組)

???????????????????????????????????????????????????????????????2.4

向導為我們提供幾套顯示模版供我們選擇(2.5)

???????????????????????????????????????????????????????????????2.5

最終它根據我們的設定生成了一份報表(圖2.6)。

???????????????????????????????????????????????????????????????2.6

所有的工作已經全部完成,只需要執行報表就可以了。點擊后面這個執行動態報表將出來下圖(2.7)的報表結果。

???????????????????????????????????????????????????????????????2.7

?

如何支持中文。

這個報表的所有數據都是英文的,如果您的數據有中文的話,那么您還需要進行一步設定(2.8),要修改的地方有三個,1.Font Name?改成中國的字體。2.PDF Font Name?改成?STSong-Light3.PDF Encoding?改成?UniGB-UCS2-H (Chinese Simplified)。就OK啦。

???????????????????????????????????2.8

?

上面我只做了一個簡單的報表,其實?iReport+JasperReport?最大的靚點就是設計可視化的圖表報表,下面是筆者做的一個簡單的圖形報表(圖2.9)。

????????????????????????????????????????????????????????2.9

?

六、圖形報表(餅圖)

新建一個chatReport?報表

編寫SQL語句(圖3.0)。查詢每個部門有多少個職員。

????????????????????????????????????????????????????????3.0

選擇工具欄中插入餅圖的快捷鍵(圖3.1

????????????????????????????????????????????????????????3.1

出現一個圖形報表選擇向導。我們選擇第二個三維餅圖(3.2)

???????????????????????????????????3.2

?

點擊OK之后,在報表的設計器中出現一個三維餅圖(圖3.3)。我們需要設置餅圖的一些屬性,通過右鍵?Chart Properties?來完成屬性的設定。

????????????????????????????????????????????????????????3.3

出現了?Chart Properties?對話框后,選擇?Chart Data?選項卡圖形報表的數據,設置其數據來源。

對應部門的職員的個數

部門名稱

??????????????????????????????????????????????????? ?3.4

關閉設計視圖。然后選擇我們要預覽的格式(3.5)

??????????????????????????????????????????3.5

注意:在生成PDF預覽時,需要向?iReprot??lib?目錄下加入一個?iTextAsian.jar?的亞州語言包,用于處理亞州語言的亂碼的問題。iTextAsian.jar?現在很難下載得到了,如果你需要的話給我一個郵件,講明你所要的東西。

點擊工具欄的編譯運行,最終執行報表的效果(3.6)

????????????????????????????????????????????????????????3.6

??????

七、一勞永益的解決中文的問題

前面提到過報表中的中文問題,上面給出的解決方案比較麻煩需要對每個字段進行設定,下面給出一個通用的設定,可以應用到所有的字段,這樣我們只須做一次設定永久使用。

第一步:添加一個自定義的字體(3.7)

?????????????????????????????3.7

彈出一個添加自定義字體的對話框(圖3.8)。

?????????????????????????????????????????????????3.8

點擊添加一個新的字體。要想中文不出現亂碼,則要跟我的配置一樣(圖3.9)。

??????????????????????????????????????????3.9

配置已完生,以后在使用的時候只要選中字段然后右鍵屬性,在Font?選項卡中?Report Font?中選擇我的字體就OK了(圖4.0),不用像上面那樣子每次都要同時修改三個地方了。

???????????????????????????????????4.0

?

八、應用程序調用JasperReport?報表

應用程序包結構(4.1)

??????????????4.1

Servlet?代碼:

iReport?工具的lib目錄下的.jar?全部拷貝到工程下面。

???????public?void?service(HttpServletRequest?request,?HttpServletResponse?response)

?????????????????????throws?ServletException,?IOException?{

?

??????????????try?{

?????????????????????//?報表編譯之后生成的.jasper?文件的存放位置

?????????????????????File?reportFile?=?new?File(

???????????????????????????????????request.getRealPath("jasperreport/employee.jasper"));

?????????????????????//?傳遞報表中用到的參數值

?????????????????????Map<String,?String>?parameters?=?new?HashMap<String,?String>();

????????????

????????????//?"name"是報表中定義過的一個參數名稱,其類型為String?型

//???????????????????parameters.put("name",?value);

????????????

????????????byte[]?bytes?=?JasperRunManager.runReportToPdf(

???????????????????????????????????reportFile.getPath(),?null,?DBConnection.getConnection());

????????????//生成PDF文件

????????????response.setContentType("application/pdf");

?????????????????????ServletOutputStream?ouputStream?=?response.getOutputStream();

?????????????????????ouputStream.write(bytes,?0,?bytes.length);

?????????????????????ouputStream.flush();

?????????????????????ouputStream.close();

????????}?catch?(Exception?e)?{

?????????????????????System.out.println("出錯");

?????????????????????e.printStackTrace();

??????????????}

???????}

記住此應用程序需要添加一些庫支持。最簡單的辦法就是把

運行程序,打開瀏覽器。

http://localhost:8080/reportdemo/index.jsp出現此頁面(4.2)

???????????????4.2

點擊生成報表。出現我們想要的報表(4.3)

???????????????????????????????????????????????????????????????4.3

??????

????大功告成。。


總結

以上是生活随笔為你收集整理的iReport使用入门的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。