海鷗航際

          JAVA站
          posts - 11, comments - 53, trackbacks - 1, articles - 102

          整理的JasperReport資料(轉(zhuǎn)載)

          java開(kāi)發(fā)者 網(wǎng)友 溪澗
          多謝了!

          最近工作中用到報(bào)表,而我在學(xué)習(xí)JasperReport的過(guò)程中遇到了很多問(wèn)題(主要是國(guó)內(nèi)的資料太少了),網(wǎng)上很少找得到,在此我就把我找到的一些資料和大家共享,希望能對(duì)大家有所幫助。
          1、JasperReport和iReport的資源,最新版本可以到下面官方網(wǎng)站得到

          iReport官方網(wǎng)站:
          http://ireport.sourceforge.net
               JasperReport官方網(wǎng)站:
          http://jasperreports.sourceforge.net

          2、安裝
             1)、JDK的安裝,并配置JAVA_HOME
          比如我的JAVA_HOME路徑如下:
          JAVA_HOME  D:\Program Files\j2sdk1.4.2_03

          2)、由于中文的問(wèn)題,所以還需要下載:itext-1.02b.jar和iTextAsian.jar包
          下載地址:http://itext.sourceforge.net/downloads/iTextAsian.jar
          并在CLASSPATH中設(shè)置
                例如我的CLASSPATH如下:
          CLASSPATH
          E:\Program Files\Apache Group\Tomcat4.1\webapps\testreport\WEB-INF\lib\itext-1.02b.jar;E:\Program

          Files\Apache Group\Tomcat 4.1\webapps\testreport\WEB-INF\lib\iTextAsian.jar;E:\Program Files\Apache

          Group\Tomcat 4.1\webapps\testreport\WEB-INF\lib;D:\tools\iReport0.2.3\lib

             3)、iReport的安裝iReport只要解壓就OK,如果沒(méi)有安裝Ant,可以直接在iReport下的noAnt目錄下,
          運(yùn)行startup.bat就可以了,這樣iReport就可以啟動(dòng)了

          4)、JasperReport
          Jasperreport不需要任何配置,你只需將下載以后的jar包放到classpath下即可
          5)、數(shù)據(jù)庫(kù)的JDBC驅(qū)動(dòng)包
          加入到CLASSPATH中

          3、詳細(xì)資源
          iReport官方提供了一些關(guān)于iReport視頻,對(duì)于初學(xué)者很有幫助:
             地址:http://ireport.sourceforge.net/docs.html

          JasperReport官方提供的使用指南
          地址:http://jasperreports.sourceforge.net/tutorial/index.html

          JasperReport提供的一些例子:
          地址:http://jasperreports.sourceforge.net/samples/index.html

          4、常見(jiàn)問(wèn)題
          1)、iReport中提示框輸入中文是不能正常顯示,請(qǐng)將iReport下lib中的這個(gè)包刪除tinylaf.jar
             2)、在iReport中運(yùn)行報(bào)表時(shí)如果出現(xiàn)亂碼問(wèn)題,請(qǐng)檢查itext-1.02b.jar和iTextAsian.jar這兩個(gè)包是否加到CLASSPATH
          3)、在jsp或servlet高度報(bào)表時(shí)出現(xiàn)亂碼或不顯示,請(qǐng)檢查你在報(bào)表設(shè)計(jì)過(guò)程中所設(shè)置的字體及其編碼
          比如:pdfname、pdfencoding
          5、下面是兩個(gè)調(diào)試?yán)?
            Servlet:
          import javax.servlet.*;
          import javax.servlet.http.*;
          import dori.jasper.engine.*;
          import java.io.*;
          import java.util.*;
          import java.sql.*;

          /**
          * @author Administrator
          *
          * To change the template for this generated type comment go to
          * Window>Preferences>Java>Code Generation>Code and Comments
          */
          public class TestReport extends HttpServlet {

          public void doGet(HttpServletRequest request, HttpServletResponse response)
          throws ServletException, IOException {
          Connection conn = null;

          try {

          Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
          conn =
          DriverManager.getConnection(


          "jdbc:microsoft:sqlserver://192.168.0.10:1433;DatabaseName=am;user=sa;password=sa");

          ServletContext servletContext =this.getServletContext();
          File reportFile = new File(servletContext.getRealPath("test/iteminfo.jasper"));
          Map parameters = new HashMap();
          Integer i=new Integer(8);
          parameters.put("pjId", i);
          byte[] bytes =
          JasperRunManager.runReportToPdf(
          reportFile.getPath(),
          parameters,
          conn);
          response.setContentType("application/pdf");
          response.setContentLength(bytes.length);
          ServletOutputStream ouputStream = response.getOutputStream();
          ouputStream.write(bytes, 0, bytes.length);
          ouputStream.flush();
          ouputStream.close();
          } catch (JRException jre) {
          System.out.println("JRException:" + jre.getMessage());
          } catch (Exception e) {
          System.out.println("Exception:" + e.getMessage());
          }

          }

          public void doPost(
          HttpServletRequest request,
          HttpServletResponse response)
          throws ServletException, IOException {

          doGet(request, response);

          }

          }

          JSP:
          <%@ page contentType="text/html;charset=GBK" %>

          Feedback

          # re: 整理的JasperReport資料(轉(zhuǎn)載)   回復(fù)  更多評(píng)論   

          2005-08-08 22:17 by dl
          啊aaa

          # re: 整理的JasperReport資料(轉(zhuǎn)載)   回復(fù)  更多評(píng)論   

          2005-08-08 22:20 by dd
          aaa

          # re: 整理的JasperReport資料(轉(zhuǎn)載)   回復(fù)  更多評(píng)論   

          2005-08-08 22:22 by aa
          啊啊啊啊

          # re: 整理的JasperReport資料(轉(zhuǎn)載)   回復(fù)  更多評(píng)論   

          2005-08-08 22:41 by aa
          啊啊啊

          # re: 整理的JasperReport資料(轉(zhuǎn)載)   回復(fù)  更多評(píng)論   

          2005-08-08 22:42 by dl
          yes
          主站蜘蛛池模板: 沙洋县| 鹿邑县| 若尔盖县| 巨鹿县| 万全县| 宁安市| 信阳市| 台湾省| 苏尼特右旗| 苏尼特左旗| 丹巴县| 通江县| 定襄县| 朔州市| 大同县| 商丘市| 新干县| 池州市| 沁源县| 浦江县| 望城县| 蛟河市| 蓬莱市| 原平市| 连州市| 宿州市| 辽中县| 桐庐县| 渑池县| 宁强县| 阿城市| 利津县| 阜南县| 凤山县| 瓦房店市| 高尔夫| 阿城市| 文成县| 宁波市| 汾阳市| 门头沟区|