ireport與jasperreport開發詳解一1、簡介:jasperreport是一個報表製作工具,用戶須按照它編寫的規則編寫一個xml,然後得到用戶所要的報表文件。 jasperreport程序庫是一個靈活,功能強大的報表產生工具,可以以pdf, html或xml等多種形式產生報表, 並支持csv, xls,等格式報表。該引擎由java編寫,支持多種形式應用程序產生動態報表。打印的報表文檔,jasperreport是按照一個預定義的xml文檔來組織報表的數據, 這些數據來源多樣,包括關係數據庫、java容器對象,後面我們將介紹,用戶通過簡單的接口來實現數據源與報表引擎的使用。首先我們所用到的ireport的版本是:ireport 0.4.1;jasperreport的版本是:jasperreports 0.6.5.目前ireport支持asperreports 0.6.0到0.6.4之間的版本包括0.6.0.和0.6.4版本身。 1.運行環境jdk要求最低1.2.2 或更高版本。 2.jasperreport的工作方式(圖片來源:http://ireport.sourceforge.net/cap3.html#3.1) 用戶通過使用ireport設計好報表後,得到一個xml文件(以.jrxml結尾的),編譯後生成jasper文件(以.jasper結尾),最終要使用的是編譯後的*.jasper文件3.ireport3.1.1 將ireport0.4.1解壓後在目錄中會有一個名為:ireport.bat的批處理文件,雙擊運行它(如圖:)。 3.1.2 ireport運行起來後的主界面如下圖: 3.1.3 製作基於sql server數據庫的一個報表(靜態的報表製作在網上很多,在這裡不作說明), 首先選中file菜單(如圖), (圖1)選取中new document創建一個新報表(也可以選report wizard報表嚮導來生成報表,現在暫不談),也可以點擊圖標, 來新建報表。 3.1.4 真寫報表屬性在report name真入報表名字,在page size區內選擇你所要用的紙張及尺寸,我們在這裡選擇默認參數, 在網上很多資料介紹須要修改i18n選項卡中的xml encoding ,改為gb2312,默認參數為utf-8,並且ireport並沒有提供該選項,此選項我們並沒有去修改它仍然為utf-8,如果你認為有必要可以手動輸入gb2312.然後點擊ok.主界面變為:3.1.5 設置數據源,單擊菜單datasource,選中connections/datasources出現如下對畫框,單擊new設置數據源單擊new後,彈出對畫框,設置連接屬性(如圖:),選擇你的數據源(type of connection/ddatasource), 裡面有javabean,xml,jdbc等數據源,我們選擇jdbc數據源,數據源名字name,可以任意輸入你喜歡的名字。在jdbc driver 下拉列錶框中選擇數據庫連接驅動, 我們選擇連接sql server類開的如圖,連接jdbc的url,它會自動為你填上。在server address輸入框中輸入服務器地址。在database輸入框中填寫你要使用的數據庫名字.以及填上你登陸數據庫的用戶名username和密碼password,然後點擊密碼輸入框中邊上的save password保存密碼,接著點擊wizard將你的登陸信息更新到jdbc url中,現在我們應該作一個對數據庫的連接測試,看看設置是否正確點擊右下角的test, 如果測試成功後會彈出否則就會彈出連接錯誤對話框(如圖) 這時你就要檢查你的設置參數是否正確,以有數據庫的安全登陸方式。未完待續faq1.生成報表時中文產生亂碼? jasperreport的中文處理,須要一個亞洲語言包itextasian.jar,話到ireport下的lib目錄中;然後修改報表的pdf font name將其改為stsong-light,再則是修改pdf embedded pdf encoding 將其改為unigb-ucs2-h(chinese simplified) ,這樣就可以解決jasperreport的中文問題了(針對pdf設置的,對excel也許要少一些,不過這樣設置同樣也能顯示為中文,是不愛引響的)。 2.報表編譯時產生noclassdeffoundexception異常?在代碼處理jasperreport時出現該異常,是因為在引用jasperreport的一些jar文件不完整,因工作忙我的處理方式是將jasperreport目錄下的demo ample/webapp/web- inf/lib/所有的jar文件,全引用了,以防不測,同時也沒有時間去過多的深究。一定會有一些不必要的包被引用了,如果你有時間可以看一下,再將不必要的jar去掉。 3.另存為pdf時出現unisupportencodingexception異常?在報表設計的過程中難免會有小錯誤,這是因為沒有改變pdf font name應改為stsong-light.下載相關:ireport下載地址:http://ireport. sourceforge.netjasperreport下載地址:http://jasperreports.sourceforge.netitext亞洲語言包下載地址:http://www.lowagie.com/itext
收集最實用的網頁特效代碼!