Jasperreport5.6.9-----2

Jasperreport5.6.0生成PDF
 
上一篇讲的是jasperreport5.6.0生成pdf,运行后可以生成pdf,可是和我们的需求有点差距,我们是要求生成后,可以直接打开或保存,这就需要response的设置了,如下代码:

   //ireport生成项目立项PDF格式

   public String getIreportPDFAction()

   {

      Connection conn =null;//连接

      try {

         String projectapproid =request.getParameter("projectapproid");

          ////连接JDBC得到数据URL

          String url ="jdbc:oracle:thin:@192.168.1.104:1521:orcl";

          Class.forName("oracle.jdbc.driver.OracleDriver");

          conn = DriverManager.getConnection(url,"zwjx","zwjx");

          //设置参数

          Map parmerters = new HashMap();

          parmerters.put("projectapproid", projectapproid);

         //读取报表模板文件

         FilejasperFile=new File("D:/Workspaces/zwjxSystem/WebRoot/jasper/report1.jasper");

         //设置报表中参数的值

         Map map =new HashMap();

         map.put("projectapproid", projectapproid);

          //输出流

          OutputStream ous =response.getOutputStream();

          //输出文件名

          String filenames="项目立项";

          //打印

          JasperPrint print =JasperFillManager.fillReport(jasperFile.getPath(), map,conn);

//        //生成pdf

          JRAbstractExporter exporter =newJRPdfExporter();

          response.reset();

          response.setContentType("application/pdf");

          response.setHeader("Content-Disposition","attachment;filename="+new String(filenames.getBytes("gbk"),"iso8859-1")+".pdf");

          //指向

          JasperReportsUtils.render(exporter, print,ous);

          ous.flush();

          ous.close();

      }catch (Exceptione) {

          e.printStackTrace();

          System.out.println("ireport生成报表出错!");

      }finally

      {

          try {

             conn.close();

          }catch(SQLException e) {

             //TODO Auto-generated catch block

             e.printStackTrace();

          }

      }

          returnnull;

   }

运行后,弹出如下对话框,我们可以根据需要选择。可以直接打开,也可以保存。

posted on   丶柚子  阅读(377)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示