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;

}

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

Jasperreport5.6.9-----2的更多相关文章

  1. Jasperreport5.6.9-----1

    Jasperreport5.6.0生成PDF 最近项目中需要生成报表,先是看了下itext,觉得还可以,但是如果数据字段多的话,不太灵活.所以后来看了下ireport,觉得还可以,下面简单说一下它们: ...

  2. 使用jasperreports-5.6.0.jar导致的问题

    使用jasperreports-5.6.0.jar导致的问题 Struts2+jasperReport5.6如下设置: <!-- 社员档案 --> <package name=&qu ...

  3. ireport导出中英文pdf

    准备: 报表开发工具:ireport 5.6.0 报表框架: jasperreport5.6.0 1.中文格式设置pdf fontname.isembedded.pdfencoding pdf fon ...

随机推荐

  1. Redis String数据类型

    get() del() set() setnx():如果key 不存在就进行设置,存在返回0 setex():设置value存在时间  setex color 10 red    在10s中,colo ...

  2. 使用ssh密钥登录虚拟主机里的另一台主机报警的解决方案

    提示:Address 192.168.*.* maps to localhost, but this does not map back to the address - POSSIBLE BREAK ...

  3. redis 哨兵模式 Connection refused

    spring整合redis哨兵,修改了bind ,protected 任然连接拒绝,是因为哨兵的mastername 和spring里面的名称不一致..导致拒绝了...... 哨兵模式配置文件 属性  ...

  4. ejs 用到的语法

    1.ejs 服务端渲染模板 2.语法: 01. <%= 变量名 %> -原样输出,不解析标签 02. <% js代码 %> 03. <%- 变量名%> -解析标签 ...

  5. 尚硅谷springboot学习5-主入口类说明

    package com.atguigu; import org.springframework.boot.SpringApplication; import org.springframework.b ...

  6. UNITY优化资料收集

    U3D手册: Optimizing garbage collection in Unity games https://zhuanlan.zhihu.com/p/25306993 https://gi ...

  7. centos 下修改mysql 默认字符集

    解决办法: CentOS 7下修改MySQL数据库字符编码为UTF-8,UTF-8包含全世界所有国家需要用到的字符,是国际编码. 具体操作: 1.进入MySQL控制台 mysql  -u root - ...

  8. Mac下如何安装WebStorm + 破解

    1.官网下载       下载地址   选择好系统版本以后,点击DOWNLOAD        2.安装 双击下载好的安装包.将WebStromt拖入application文件夹,然后在Launchp ...

  9. Android Studio 上传GitHub项目失败后的一些问题

    在Android Studio上传项目到GitHub时候多上传了了一些项目,想删除,但是报诸如 Remote project is already on GitHub 一些乱七八糟的问题,而且,提示p ...

  10. http post 接口

    集团需求管理系统通过网状网与给各省公司需求管理系统进行交互.落地方为发起方提供访问的URL,发起方使用HTTP POST方法发送请求报文并得到应答报文,发起方作为落地方的HTTP客户端,落地方作为发起 ...