JasperReport实例

系统 1481 0
  1. package  test.report;   
  2.   
  3. import  java.math.BigDecimal;   
  4. import  java.sql.Connection;   
  5. import  java.sql.DriverManager;   
  6. import  java.sql.PreparedStatement;   
  7. import  java.sql.ResultSet;   
  8. import  java.sql.SQLException;   
  9. import  java.util.HashMap;   
  10.   
  11. import  net.sf.jasperreports.engine.JRException;   
  12. import  net.sf.jasperreports.engine.JRResultSetDataSource;   
  13. import  net.sf.jasperreports.engine.JasperCompileManager;   
  14. import  net.sf.jasperreports.engine.JasperExportManager;   
  15. import  net.sf.jasperreports.engine.JasperFillManager;   
  16. import  net.sf.jasperreports.engine.JasperPrint;   
  17. import  net.sf.jasperreports.engine. JasperReport ;   
  18. import  net.sf.jasperreports.engine.util.JRLoader;   
  19.   
  20. public   class  GenerateReport {   
  21.     public   static   void  main(String[] args) {   
  22.        try  {   
  23.          sql4Report();   
  24.       }  catch  (JRException e) {   
  25.          e.printStackTrace();   
  26.       }  catch  (SQLException e) {   
  27.          e.printStackTrace();   
  28.       }  finally  {   
  29.          System.out.print(  "finish"  );   
  30.       }   
  31.    }   
  32.        
  33.     public   static   void  parameter4Report ()    
  34.        throws  SQLException, JRException {   
  35.        //report parameter    
  36.       HashMap<String, Object> parameter =    
  37.           new  HashMap<String, Object>();   
  38.       parameter.put(  "master_location_id" new  BigDecimal( 22 ) );   
  39.   
  40.       Connection con = getConnection();   
  41.        JasperReport   jasperReport  =    
  42.          JasperCompileManager.compileReport( "reports/Location.jrxml" );   
  43.       JasperPrint jasperPrint =    
  44.          JasperFillManager.fillReport(  jasperReport , parameter, con );   
  45.            
  46.       JasperExportManager.exportReportToPdfFile(   
  47.          jasperPrint,  "reports/location_parameter4Report.pdf" );        
  48.    }   
  49.        
  50.     public   static   void  sql4Report ()  throws  SQLException, JRException {   
  51.        //create the ResultSet    
  52.       Connection con = getConnection();   
  53.       PreparedStatement statement =    
  54.          con.prepareStatement(    
  55.              "select * from loc_location "   
  56.           +  "where location_type_cd = 'ROOM' "   
  57.           +  "order by location_type_cd"     
  58.          );   
  59.       ResultSet resultSet = statement.executeQuery();   
  60.            
  61.       JRResultSetDataSource result =    
  62.           new  JRResultSetDataSource( resultSet );   
  63.        JasperReport   jasperReport  =    
  64.          JasperCompileManager.compileReport( "reports/Location.jrxml" );   
  65.       JasperPrint jasperPrint =    
  66.          JasperFillManager.fillReport(    
  67.              jasperReport new  HashMap(), result    
  68.          );   
  69.            
  70.       JasperExportManager.exportReportToPdfFile(   
  71.          jasperPrint,  "reports/location_sql4Report.pdf"   
  72.       );   
  73.    }   
  74.        
  75.     public   static   void  jasper4Report ()    
  76.        throws  SQLException, JRException {   
  77.        //create the ResultSet    
  78.       Connection con = getConnection();   
  79.       PreparedStatement statement =    
  80.          con.prepareStatement(    
  81.              "select * from loc_location "   
  82.           +  "where location_type_cd = 'ROOM' "   
  83.           +  "order by location_type_cd"     
  84.          );   
  85.       ResultSet resultSet = statement.executeQuery();   
  86.            
  87.       JRResultSetDataSource result =    
  88.           new  JRResultSetDataSource( resultSet );   
  89.        //modify    
  90.        JasperReport   jasperReport  =    
  91.          ( JasperReport ) JRLoader.loadObject(   
  92.              "reports/Location.jasper"   
  93.          );   
  94.       JasperPrint jasperPrint =    
  95.          JasperFillManager.fillReport(    
  96.              jasperReport new  HashMap(), result   
  97.          );   
  98.            
  99.       JasperExportManager.exportReportToPdfFile(   
  100.          jasperPrint,  "reports/location_jasper4Report.pdf"   
  101.       );   
  102.    }   
  103.   
  104.     public   static   void  xls4Report ()  throws  SQLException, JRException {   
  105. //    create the ResultSet    
  106.       Connection con = getConnection();   
  107.       PreparedStatement statement =    
  108.          con.prepareStatement(   
  109.              "select * from loc_location "   
  110.           +  "where location_type_cd = 'ROOM' "   
  111.           +  "order by location_type_cd"     
  112.          );   
  113.       ResultSet resultSet = statement.executeQuery();   
  114.            
  115.            
  116.       JRResultSetDataSource result =    
  117.           new  JRResultSetDataSource( resultSet );   
  118. //    create  JasperReport  from .jasper    
  119.        JasperReport   jasperReport  =    
  120.          ( JasperReport ) JRLoader.loadObject( "reports/Location.jasper" );   
  121.       JasperPrint jasperPrint =    
  122.          JasperFillManager.fillReport(  jasperReport new  HashMap(), result );   
  123.            
  124. //        JasperExportManager.exportReportToPdfFile( jasperPrint, "reports/location_xls4Report.xls");    
  125.            
  126.       JRXlsExporter xlsExporter =  new  JRXlsExporter();   
  127.       xlsExporter.setParameter( JRExporterParameter.JASPER_PRINT, jasperPrint );   
  128.       xlsExporter.setParameter( JRExporterParameter.OUTPUT_FILE,  new  File( "reports/location_xls4Report.xls" ) );   
  129.       xlsExporter.exportReport();   
  130.    }   
  131.        
  132.     private   static  Connection getConnection ()  throws  SQLException {   
  133.       DriverManager.registerDriver(    
  134.           new  oracle.jdbc.driver.OracleDriver()   
  135.       );     
  136.        return  DriverManager.getConnection( url, user, pw );   
  137.    }   
  138.        
  139.     private   static  String url =  "jdbc:oracle:thin:@localhost:1521:db" ;   
  140.     private   static  String user =  "report" ;   
  141.     private   static  String pw   =  "report" ;   
  142. }  
Java代码   收藏代码
  1. package  test.report;  
  2.   
  3. import  java.math.BigDecimal;  
  4. import  java.sql.Connection;  
  5. import  java.sql.DriverManager;  
  6. import  java.sql.PreparedStatement;  
  7. import  java.sql.ResultSet;  
  8. import  java.sql.SQLException;  
  9. import  java.util.HashMap;  
  10.   
  11. import  net.sf.jasperreports.engine.JRException;  
  12. import  net.sf.jasperreports.engine.JRResultSetDataSource;  
  13. import  net.sf.jasperreports.engine.JasperCompileManager;  
  14. import  net.sf.jasperreports.engine.JasperExportManager;  
  15. import  net.sf.jasperreports.engine.JasperFillManager;  
  16. import  net.sf.jasperreports.engine.JasperPrint;  
  17. import  net.sf.jasperreports.engine.<span  class = "hilite1" ><span style= "background-color: #ffff00;" >JasperReport</span></span>;  
  18. import  net.sf.jasperreports.engine.util.JRLoader;  
  19.   
  20. public   class  GenerateReport {  
  21.     public   static   void  main(String[] args) {  
  22.        try  {  
  23.          sql4Report();  
  24.       }  catch  (JRException e) {  
  25.          e.printStackTrace();  
  26.       }  catch  (SQLException e) {  
  27.          e.printStackTrace();  
  28.       }  finally  {  
  29.          System.out.print(  "finish"  );  
  30.       }  
  31.    }  
  32.       
  33.     public   static   void  parameter4Report ()   
  34.        throws  SQLException, JRException {  
  35.        //report parameter   
  36.       HashMap<String, Object> parameter =   
  37.           new  HashMap<String, Object>();  
  38.       parameter.put(  "master_location_id" new  BigDecimal( 22 ) );  
  39.   
  40.       Connection con = getConnection();  
  41.       <span  class = "hilite1" ><span style= "background-color: #ffff00;" >JasperReport</span></span> <span  class = "hilite1" ><span style= "background-color: #ffff00;" >jasperReport</span></span> =   
  42.          JasperCompileManager.compileReport( "reports/Location.jrxml" );  
  43.       JasperPrint jasperPrint =   
  44.          JasperFillManager.fillReport( <span  class = "hilite1" ><span style= "background-color: #ffff00;" >jasperReport</span></span>, parameter, con );  
  45.           
  46.       JasperExportManager.exportReportToPdfFile(  
  47.          jasperPrint,  "reports/location_parameter4Report.pdf" );       
  48.    }  
  49.       
  50.     public   static   void  sql4Report ()  throws  SQLException, JRException {  
  51.        //create the ResultSet   
  52.       Connection con = getConnection();  
  53.       PreparedStatement statement =   
  54.          con.prepareStatement(   
  55.              "select * from loc_location "   
  56.           +  "where location_type_cd = 'ROOM' "   
  57.           +  "order by location_type_cd"    
  58.          );  
  59.       ResultSet resultSet = statement.executeQuery();  
  60.           
  61.       JRResultSetDataSource result =   
  62.           new  JRResultSetDataSource( resultSet );  
  63.       <span  class = "hilite1" ><span style= "background-color: #ffff00;" >JasperReport</span></span> <span  class = "hilite1" ><span style= "background-color: #ffff00;" >jasperReport</span></span> =   
  64.          JasperCompileManager.compileReport( "reports/Location.jrxml" );  
  65.       JasperPrint jasperPrint =   
  66.          JasperFillManager.fillReport(   
  67.             <span  class = "hilite1" ><span style= "background-color: #ffff00;" >jasperReport</span></span>,  new  HashMap(), result   
  68.          );  
  69.           
  70.       JasperExportManager.exportReportToPdfFile(  
  71.          jasperPrint,  "reports/location_sql4Report.pdf"   
  72.       );  
  73.    }  
  74.       
  75.     public   static   void  jasper4Report ()   
  76.        throws  SQLException, JRException {  
  77.        //create the ResultSet   
  78.       Connection con = getConnection();  
  79.       PreparedStatement statement =   
  80.          con.prepareStatement(   
  81.              "select * from loc_location "   
  82.           +  "where location_type_cd = 'ROOM' "   
  83.           +  "order by location_type_cd"    
  84.          );  
  85.       ResultSet resultSet = statement.executeQuery();  
  86.           
  87.       JRResultSetDataSource result =   
  88.           new  JRResultSetDataSource( resultSet );  
  89.        //modify   
  90.       <span  class = "hilite1" ><span style= "background-color: #ffff00;" >JasperReport</span></span> <span  class = "hilite1" ><span style= "background-color: #ffff00;" >jasperReport</span></span> =   
  91.          (<span  class = "hilite1" ><span style= "background-color: #ffff00;" >JasperReport</span></span>) JRLoader.loadObject(  
  92.              "reports/Location.jasper"   
  93.          );  
  94.       JasperPrint jasperPrint =   
  95.          JasperFillManager.fillReport(   
  96.             <span  class = "hilite1" ><span style= "background-color: #ffff00;" >jasperReport</span></span>,  new  HashMap(), result  
  97.          );  
  98.           
  99.       JasperExportManager.exportReportToPdfFile(  
  100.          jasperPrint,  "reports/location_jasper4Report.pdf"   
  101.       );  
  102.    }  
  103.   
  104.     public   static   void  xls4Report ()  throws  SQLException, JRException {  
  105. //    create the ResultSet   
  106.       Connection con = getConnection();  
  107.       PreparedStatement statement =   
  108.          con.prepareStatement(  
  109.              "select * from loc_location "   
  110.           +  "where location_type_cd = 'ROOM' "   
  111.           +  "order by location_type_cd"    
  112.          );  
  113.       ResultSet resultSet = statement.executeQuery();  
  114.           
  115.           
  116.       JRResultSetDataSource result =   
  117.           new  JRResultSetDataSource( resultSet );  
  118. //    create <span class="hilite1"><span style="background-color: #ffff00;">JasperReport</span></span> from .jasper   
  119.       <span  class = "hilite1" ><span style= "background-color: #ffff00;" >JasperReport</span></span> <span  class = "hilite1" ><span style= "background-color: #ffff00;" >jasperReport</span></span> =   
  120.          (<span  class = "hilite1" ><span style= "background-color: #ffff00;" >JasperReport</span></span>) JRLoader.loadObject( "reports/Location.jasper" );  
  121.       JasperPrint jasperPrint =   
  122.          JasperFillManager.fillReport( <span  class = "hilite1" ><span style= "background-color: #ffff00;" >jasperReport</span></span>,  new  HashMap(), result );  
  123.           
  124. //        JasperExportManager.exportReportToPdfFile( jasperPrint, "reports/location_xls4Report.xls");   
  125.           
  126.       JRXlsExporter xlsExporter =  new  JRXlsExporter();  
  127.       xlsExporter.setParameter( JRExporterParameter.JASPER_PRINT, jasperPrint );  
  128.       xlsExporter.setParameter( JRExporterParameter.OUTPUT_FILE,  new  File( "reports/location_xls4Report.xls" ) );  
  129.       xlsExporter.exportReport();  
  130.    }  
  131.       
  132.     private   static  Connection getConnection ()  throws  SQLException {  
  133.       DriverManager.registerDriver(   
  134.           new  oracle.jdbc.driver.OracleDriver()  
  135.       );    
  136.        return  DriverManager.getConnection( url, user, pw );  
  137.    }  
  138.       
  139.     private   static  String url =  "jdbc:oracle:thin:@localhost:1521:db" ;  
  140.     private   static  String user =  "report" ;  
  141.     private   static  String pw   =  "report" ;  
  142. }  



需要的包: 
jasperreports-3.1.2.jar 
jasperreports-3.1.2-applet.jar 
jasperreports-3.1.2-javaflow.jar 
commons-collections.jar 
commons-digester.jar 
commons-logging-1.0.4.jar 
commons-logging-api.jar 
commons-beanutils.jar 
itext-1.3.1.jar 
classes12.jar 
poi-3.0.1.jar 
poi-contrib-3.0.1-FINAL-20070705.jar 
poi-scratchpad-3.0.1-FINAL-20070705.jar 

文件结构: 
+test 
++report 
+++GenerateReport.java 

+reports 
++Location.jrxml 
++Location.jasper 

数据表要和Location.jrmal或Location.jasper(即report的设计一致就行了

JasperReport实例


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论