话不多说,直接上代码:
@RequestMapping("/demo01") public void test(HttpServletRequest request, HttpServletResponse response) { try{ Map<String, Object> paramsMap = new HashMap<>(); File logoFile = ResourceUtils.getFile("classpath:static/img/logo.jpg"); paramsMap.put("logUrl",logoFile.getAbsolutePath()); List<ApplyForEvaluation> listObj = new ArrayList<>(); ApplyForEvaluation obj = new ApplyForEvaluation(); obj.setEvaluateCode("1112845857174"); obj.setHouseOwner("张三"); obj.setPropertyNo("1234567890"); obj.setHouseAddress("1号楼2单元602室"); obj.setSystemAddress("1号楼2单元602室"); obj.setBuildingStructure("混凝土"); obj.setCurrentFloor(12); obj.setTotalFloor(33); obj.setBuildingArea(189.43); obj.setHouseUse("住房"); obj.setBuildingYear(2001); obj.setEvaluateDate("2018年9月3日"); obj.setUnitPrice(170000); obj.setTotalPrice(604.38); listObj.add(obj); String fileName = "E:\\iReportDemo\\applyForEvaluate.jrxml";//直接操作生成的jrxml文件 JasperReport jasperReport = JasperCompileManager.compileReport(fileName);//编译jrxml文件 JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, paramsMap, new JRBeanCollectionDataSource(listObj)); //设定输出格式 OutputStream ouputStream = response.getOutputStream(); response.setContentType("application/pdf"); response.setCharacterEncoding("UTF-8"); response.setHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode(obj.getEvaluateCode(), "UTF-8") + ".pdf"); // 使用JRPdfExproter导出器导出pdf JRPdfExporter exporter = new JRPdfExporter(); exporter.setExporterInput(new SimpleExporterInput(jasperPrint)); exporter.setExporterOutput(new SimpleOutputStreamExporterOutput(ouputStream)); SimplePdfExporterConfiguration configuration = new SimplePdfExporterConfiguration(); exporter.setConfiguration(configuration); exporter.exportReport(); }catch (Exception e){ e.printStackTrace(); } }
本文暂时没有评论,来添加一个吧(●'◡'●)