当前位置: 首页 > wzjs >正文

沈阳网官方网站湖南省建设厅领导一览

沈阳网官方网站,湖南省建设厅领导一览,鹤岗哈尔滨网站建设,长沙百度首页优化排名文章目录 一、前言二、后端代码1、pom依赖2、Jaspersoft Studio生成的jasper文件3、main程序测试案例4、解决中文不显示问题5、web接口案例 三、Vue前端代码四、演示效果 一、前言 以前,在流行jdk1.6的时候,作pdf报表,用的软件是iReport。 …

文章目录

  • 一、前言
  • 二、后端代码
    • 1、pom依赖
    • 2、Jaspersoft Studio生成的jasper文件
    • 3、main程序测试案例
    • 4、解决中文不显示问题
    • 5、web接口案例
  • 三、Vue前端代码
  • 四、演示效果

一、前言

以前,在流行jdk1.6的时候,作pdf报表,用的软件是iReport。
在这里插入图片描述
后来,主流jdk升级到1.8后,这个,软件就停止更新了。
现在使用的是JasperReport Studio
在这里插入图片描述在这里插入图片描述

下载Jaspersoft Studio 6
链接:https://pan.baidu.com/s/1mgkRC5qnz74k8AwdOMZqYQ
提取码:cwqb

二、后端代码

1、pom依赖

网上说一大堆的依赖,其实,只需要一个即可。

        <dependency><groupId>net.sf.jasperreports</groupId><artifactId>jasperreports</artifactId><version>6.17.0</version></dependency>

2、Jaspersoft Studio生成的jasper文件

在这里插入图片描述

3、main程序测试案例

import net.sf.jasperreports.engine.JREmptyDataSource;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import org.springframework.util.ResourceUtils;import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.HashMap;
import java.util.Map;public class Test01 {public static void main(String[] args) throws FileNotFoundException, JRException {File file = ResourceUtils.getFile("classpath:templates/test01.jasper");Map<String,Object> params = new HashMap<>();params.put("username","张三");params.put("email","123456@qq.com");JasperPrint jasperPrint = JasperFillManager.fillReport(new FileInputStream(file), params, new JREmptyDataSource());JasperExportManager.exportReportToPdfFile(jasperPrint,"pdf/test01.pdf");}
}

4、解决中文不显示问题

创建目录:src/main/resources/fonts
创建文件:fonts.xml

<?xml version="1.0" encoding="UTF-8"?><fontFamilies><fontFamily name="黑体"><!--字体名称--><normal>fonts/simhei.ttf</normal><!--字体文件的路径--><bold>fonts/simhei.ttf</bold><italic>fonts/simhei.ttf</italic><boldItalic>fonts/simhei.ttf</boldItalic><pdfEncoding>Identity-H</pdfEncoding><!--这里的定义就与上面1.1的图设置相匹配了--><pdfEmbedded>true</pdfEmbedded><exportFonts><export key="net.sf.jasperreports.html">'黑体', Arial, Helvetica, sans-serif</export><export key="net.sf.jasperreports.xhtml">'黑体', Arial, Helvetica, sans-serif</export></exportFonts></fontFamily>
</fontFamilies>

从windows的目录:C:\Windows\Fonts
中找.ttf文件格式的字体,放入fonts中
在这里插入图片描述
添加配置文件:jasperreports_extension.properties

net.sf.jasperreports.extension.registry.factory.simple.font.families=net.sf.jasperreports.engine.fonts.SimpleFontExtensionsRegistryFactory
net.sf.jasperreports.extension.simple.font.families.lobstertwo=fonts/fonts.xml

5、web接口案例

	@GetMapping(value = "/preview/pdf")public void preview(HttpServletRequest request, HttpServletResponse response) throws Exception {
//		封装参数	对应jasper report里面的filedMap<String,Object> params = new HashMap<>();params.put("username","张三");params.put("email","123456@qq.com");File file = ResourceUtils.getFile("classpath:templates/test01.jasper");request.setCharacterEncoding("utf-8");response.setCharacterEncoding("utf-8");response.setContentType("text/html");response.setContentType("application/pdf");
//		String fileName = new Date()+"测试报告.pdf";
//		设置header的这个属性,就变成了直接下载
//		response.setHeader("content-disposition","attachment;filename="+ URLEncoder.encode(fileName,"utf-8"));
//		new JREmptyDataSource()  给一个空数据源,因为,params已经查询到了具体的数据。JasperPrint jasperPrint = JasperFillManager.fillReport(new FileInputStream(file), params, new JREmptyDataSource());JasperExportManager.exportReportToPdfStream(jasperPrint,response.getOutputStream());}

三、Vue前端代码

这里需要一点axios的基本功。

      checkPdf().then(res => {// 将获取到的PDF文件流转换为Blob对象const blob = new Blob([res], { type: 'application/pdf' })// 创建一个URL对象const urlTwo = URL.createObjectURL(blob)// 设置PDF源为创建的URLwindow.open(urlTwo, '_blank')})

四、演示效果

在这里插入图片描述


文章转载自:

http://SNFm4XXB.mhtsk.cn
http://haDAZ0jM.mhtsk.cn
http://umLUGbj3.mhtsk.cn
http://89PqH6Dc.mhtsk.cn
http://rM9pC8aG.mhtsk.cn
http://PBEQH3Vx.mhtsk.cn
http://j2mdFPV9.mhtsk.cn
http://Wbd6Qfdx.mhtsk.cn
http://NOfdnCcA.mhtsk.cn
http://mT0AX97D.mhtsk.cn
http://fzuPdnuU.mhtsk.cn
http://2gr8WnlN.mhtsk.cn
http://XVcPnDG9.mhtsk.cn
http://FJBmUt92.mhtsk.cn
http://mmybCezy.mhtsk.cn
http://LKtQgOTn.mhtsk.cn
http://kkSH7x0l.mhtsk.cn
http://BczYMo4X.mhtsk.cn
http://RwPAYXiX.mhtsk.cn
http://TeGnOBa5.mhtsk.cn
http://e1Uh3QIn.mhtsk.cn
http://12I8mEGQ.mhtsk.cn
http://8VyKWvTD.mhtsk.cn
http://jO5zPK9Z.mhtsk.cn
http://wKGWxLNF.mhtsk.cn
http://GR4U00px.mhtsk.cn
http://XnAvO1PX.mhtsk.cn
http://uMcnvuQ6.mhtsk.cn
http://66wrTivO.mhtsk.cn
http://T9iWRe4n.mhtsk.cn
http://www.dtcms.com/wzjs/739992.html

相关文章:

  • seo整站优化什么价格成都防疫最新动态
  • 怎么自己做淘宝网站wordpress插件ERP
  • 深圳建设网站哪家好卖服务器网站源码
  • p2p网站建设后期维护代理记账公司怎么找客源
  • 网站seo顾问北京企业宣传片制作公司
  • 慈利县建设局网站seo推广网站
  • 个人网页设计制作网站模板wordpress登录搜索
  • 河北燕郊网站制作怎样黑进别人的网站
  • 沈阳网络推广建站ai国外教程网站
  • 做网站做什么好教育网站都有哪些
  • wordpress如何使用一个demo百度地图关键词优化
  • 重庆公众号开发服务长沙网络优化推广公司
  • 郑州做软件开发的公司西安seo外包机构
  • 中国网站建设市场分析报告故宫文创产品
  • 免费建站还用学做网站吗wordpress 头像缓存到本地
  • 做外贸找工厂货源网站黄山自驾游攻略
  • 哈尔滨建设工程招聘信息网站做暧暧免费网站
  • 部门网站建设需求确认表网站优化具体怎么做
  • 杭州网站设计建设怎样建立一个简单的网站
  • 成都营销类网站设计东营抖音网络推广公司
  • 静宁门户网站手机上怎么建网站
  • 网站建设经验王者荣耀恺和门户网站cms程序
  • 建设部城市管理监督局网站官网定制一款app
  • 维护网站费用网站关键词推广
  • 制作一个网站官网百度推广后台
  • 新年祝福语在线制作网站前段模板网站
  • 如何做商业网站专业网站建设微信网站定制
  • 提高网站排名的方法网站建设是什么专业里的科目
  • 网站建设综合训练深圳精美网站设计
  • 企业网站实验报告网站建设遇到的问题