此片段达到的效果是:访问此请求,浏览器将打开新的界面并显示pdf文件预览,在文件预览界面可以下载该pdf文件。

1、jsp界面代码
<input type="button" class="btn btn-info" onclick="getVerPdf();" target="_blank" value="导出为pdf文件" />
2、js代码
function getVerPdf() {
window.open('/pms/jsp/version/getPrdVerListPdf?page='
+ $("#getPage").html() + '&key=' + $("#select").val());
}
3、java代码
/**
*
* Purpose :将产品版本列表导出为pdf格式
*
* @param req
* 请求
* @param resp
* 应答
* @param page
* 当前页数
*/
@RequestMapping(value = "getPrdVerListPdf")
public void getPrdTypeList(HttpServletRequest req, HttpServletResponse resp, Integer page, String key) {
resp.setContentType("application/pdf");
// 弹框选择保存路径和文件名
// resp.setHeader("content-disposition",
// "attachment;filename=PrdVerList.pdf");
// 得到当前页的数据
List<Version> verList = prdVersionSer.getAllPrdVersion(key);
if (verList.size() == 0) {
// 如果没有数据,则返回主界面并显示提示消息
req.setAttribute("getFileMsg", "没有符合条件的信息!");
req.setAttribute("select", key);
try {
req.getRequestDispatcher("/jsp/version/ver_list.jsp").forward(req, resp);
} catch (Exception e) {
e.printStackTrace();
}
} else {
// 如果有数据,则显示pdf文件
JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(verList);
String reportPath = null;
Map<String, Object> map = new HashMap<String, Object>();
if (key != "") {
map.put("prdName", verList.get(0).getPrdName());
} else {
map.put("prdName", "");
}
reportPath = req.getServletContext().getRealPath("/reports/prdVerListByPrdName.jasper");
InputStream is = null;
try {
is = new FileInputStream(reportPath);
JasperRunManager.runReportToPdfStream(is, resp.getOutputStream(), map, ds);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (is != null) {
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# java
# web
# pdf格式
# Java实现从数据库导出大量数据记录并保存到文件的方法
# Java数据导出功能之导出Excel文件实例
# Java实现Excel导入导出数据库的方法示例
# java导出数据库的全部表到excel
# Java使用poi组件导出Excel格式数据
# Java使用easyExcel导出excel数据案例
# java从mysql导出数据的具体实例
# java实现异步导出数据
# Java树形结构数据生成导出excel文件方法记录
# JAVA实现亿级千万级数据顺序导出的示例代码
# 如果没有
# 可以下载
# 符合条件
# 大家多多
# 开新
# 当前页
# page
# getPage
# amp
# html
# getPrdVerListPdf
# window
# function
# open
# version
# pms
# getPrdTypeList
# resp
# req
# RequestMapping
相关文章:
网站按钮制作软件,如何实现网页中按钮的自动点击?
如何使用Golang table-driven基准测试_多组数据测量函数效率
Swift中switch语句区间和元组模式匹配
建站主机数据库如何配置才能提升网站性能?
简易网站制作视频教程,使用记事本编写一个简单的网页html文件?
C++如何将C风格字符串(char*)转换为std::string?(代码示例)
网站制作费用多少钱,一个网站的运营,需要哪些费用?
高端建站三要素:定制模板、企业官网与响应式设计优化
建站主机如何选?高性价比方案全解析
制作网站的基本流程,设计网站的软件是什么?
如何通过PHP快速构建高效问答网站功能?
网站制作需要会哪些技术,建立一个网站要花费多少?
活动邀请函制作网站有哪些,活动邀请函文案?
如何选择高效便捷的WAP商城建站系统?
定制建站流程解析:需求评估与SEO优化功能开发指南
兔展官网 在线制作,怎样制作微信请帖?
微信推文制作网站有哪些,怎么做微信推文,急?
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
c# F# 的 MailboxProcessor 和 C# 的 Actor 模型
建站之星后台密码如何安全设置与找回?
如何快速搭建自助建站会员专属系统?
专业网站设计制作公司,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何续费美橙建站之星域名及服务?
文字头像制作网站推荐软件,醒图能自动配文字吗?
建站主机如何安装配置?新手必看操作指南
建站之星如何修改网站生成路径?
动图在线制作网站有哪些,滑动动图图集怎么做?
,sp开头的版面叫什么?
,巨量百应是干嘛的?
建站为何优先选择香港服务器?
定制建站如何定义?其核心优势是什么?
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
如何在建站之星绑定自定义域名?
建站主机服务器选型指南与性能优化方案解析
建站之星IIS配置教程:代码生成技巧与站点搭建指南
黑客如何利用漏洞与弱口令入侵网站服务器?
建站之星手机一键生成:多端自适应+小程序开发快速建站指南
成都品牌网站制作公司,成都营业执照年报网上怎么办理?
建站10G流量真的够用吗?如何应对访问高峰?
制作宣传网站的软件,小红书可以宣传网站吗?
c++怎么编写动态链接库dll_c++ __declspec(dllexport)导出与调用【方法】
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
c++如何打印函数堆栈信息_c++ backtrace函数与符号名解析【方法】
建站之星如何助力网站排名飙升?揭秘高效技巧
小程序网站制作需要准备什么资料,如何制作小程序?
如何做网站制作流程,*游戏网站怎么搭建?
如何用手机制作网站和网页,手机移动端的网站能制作成中英双语的吗?
较简单的网站制作软件有哪些,手机版网页制作用什么软件?
网站制作培训多少钱一个月,网站优化seo培训课程有哪些?
如何快速搭建个人网站并优化SEO?
*请认真填写需求信息,我们会在24小时内与您取得联系。