熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

Jasperreport 報表開發指南

2022-06-13   來源: Java核心技術 

  概述
  Jasperreport是上一個優秀的開源的報表工具其強大的功能及免費的特性得到了廣大的認可和贊譽現在的最新版本是Jasperreport下載地址是
  
  iReport是jasperreport的一個IDE的開發工具使Jasperreport變得更易用其最新版本是iReport支持到Jasperreport和Jasperreport一樣也在不斷的更新中下載地址是
  關於利用這兩個工具開發Web報表這裡已經有幾份很好的材料
  JasperReport與iReport的配置與使用pdf(該文檔可用於一開始入門熟悉這兩個工具)
  TheJasperReportsUltimateGuidepdf (這個本是一份收費的文檔講述了Jasperreport生成的原理方面的知識如果你打算能熟練的使用Jasperreport這個報表工具需要好好看這份英文資料的)
  ?column=&thread=
  
  第一次運行
  第一次總是比較痛苦使用這個報表工具也是下面是我總結出的一些運行中比較容易出現的問題
  我的總結是建立在使用iReport + Jasperreport(沒辦法iReport還沒出來只支持到Jasperreport至於這兩者的組合我用到現在還是覺得比較順的
  從souceforge上下載iReportzip 解壓後要注意一點把你的JDK的toolsjar拷到你解壓後的iReport的lib目錄下做中文的pdf報表還需要把iTextAsianjar拷到lib下如果你用的是Oracle的數據庫那麼你還需要把classjar也就是Oracle的Jdbc包拷到lib下其他數據庫也一樣
  好了准備工作做好了運行iReportbat如果比較順利應該能看到以下畫面說明iReport成功運行了
  
  如果dos界面一閃而過並且沒有出現以上界面說明沒有成功按以下步驟可解決該問題
  確定系統安裝有JDK而且系統環境設置path裡有JDK的bin目錄並有java_home參數以下是我的幾個參數的配置情況可供參考
   java_home  D:\JBuilder\jdk
   path    D:\JBuilder\jdk\bin;D:\Install\ant\bin
   classpath  D:\iReport\fonts;E:\Project\EssV\webapps\WEBINF\classes
   ant_home  D:\Install\ant
  (關於上面參數設置的說明)
  Report及Jasperreport都要求JDK以上版本所以要注意Oracle裝好會自動把java環境設為Oracle自帶的JDK會導致無法運行iReport
  ant_home及path中ant的設置是為了可以用ant來學習Jasperreport的例子這些例子在Jasperreport解壓後的demo\samples目錄下比如在Dos環境下進入demo\samples\jasper目錄下輸入命令ant view 就可以看到該示例報表
  classpath中D:\iReport\fonts;的設置是確保iReport裡字體設置的時候能選擇一些外部字體比如要讓PDF顯示黑體那麼把windows下的f拷到D:\iReport\fonts下在iReport中如下設置:pdffontname為外部字體truetypefont 為f 編碼為unicode with horizontal writing這樣就能使用黑體了
  E:\Project\EssV\webapps\WEBINF\classesclasspath裡的這是設置是讓報表裡一些數據要經過特殊處理可以用工程裡的函數
  
  這些設置完成後到dos環境下的iReport目錄下運行iReportbatdos環境下的好處是如果iReport運行失敗可以看到失敗原因然後針對性的解決
  iReport可以運行後就是一個摸索使用慢慢了解熟悉的過程了直到你能做出像樣的一些報表這個過程可以參考上面提到的
  ?column=&thread=
  
  
  
  常見問題的解決
  
  具體做報表的時候會碰到許多問題關鍵的是我們需要分析出錯提示根據找到解決辦法比如你把報表放到你的工程下比如運行結果提示javaioFileNotFoundException那麼你就需要確定你的報表編譯後的文件在相應的目錄又比如提示NoClassDefFoundError那你就要看看是哪個包沒有放到你的工程下一下是一些常見問題
  Jasper報表中畫的交叉線在html和xls中無法顯示?
  答要想在html裡面顯示的話線與線之間線與字框之間不能有任何一點重合所以你說的交叉線如果是兩條線直接交叉畫的話就只能由一條顯示需要分三條線段畫
From:http://tw.wingwit.com/Article/program/Java/hx/201401/30281.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.