解析spring boot与ireport 整合问题

网友投稿 528 2022-11-28

解析spring boot与ireport 整合问题

解析spring boot与ireport 整合问题

pom 文件依赖

net.sf.jasperreports

jasperreports

6.10.0

org.codehaus.groovy

groovy-all

2.4.11

cn.lesper

iTextAsian

3.0

controller

@GetMapping("/preview")

public void print(HttpServletResponse response) throws Exception {

List> data = getMaps();

JRDataSource dataSource = new JRBeanCollectionDataSource(data);

File file = ResourceUtils.getFile("classpath:jaspertemplate/abc.jrxml");

response.setCharacterEncoding("utf-8");

response.setContentType("application/pdf");

response.setHeader("content-disposition", "attachment;filename=" + URLEncoder.encode("test", "UTF-8") + ".pdf");

try (OutputStream outputStream = response.getOutputStream()) {

//编译jrxml

JasperReport jasperReport = JasperCompileManager.compileReport(file.getPath());

//渲染加载数据

HashMap params = new HashMap<>();

JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, params, dataSource);

JasperExportManager.exportReportToPdfStream(jasperPrint, outputStream);

} catch (IOException | JRException e) {

e.printStackTrace();

}

}

private List> getMaps() {

List> data = new ArrayList<>();

for (int i = 0; i < 10; i++) {

Map m = new HashMap<>(3);

m.put("id", "id" + i);

m.put("name", "测试" + i);

m.put("price", "price" + i);

m.put("volTitle", "测试" + i);

data.add(m);

}

return data;

}

abc.jrxml 文件

path:src/main/resources/jaspertemplate

<![CDATA[volumnSeq]]>

<![CDATA[ajLb]]>

<![CDATA[volTitle]]>

<![CDATA[keepCode]]>

<![CDATA[pageNmbr]]>

<![CDATA[remark]]>

<![CDATA[目 录]]>

<![CDATA[顺序号 ]]>

<![CDATA[类别]]>

<![CDATA[标题]]>

<![CDATA[起止时间]]>

<![CDATA[保管期限]]>

<![CDATA[张数]]>

<![CDATA[备 注]]>

<![CDATA[$F{volumnSeq}]]>

<![CDATA[$F{ajLb}]]>

<![CDATA[$F{volTitle}]]>

<![CDATA[$F{bgnDate}]]>

<![CDATA[$F{docNmbr}]]>

<![CDATA[$F{fnshDate}]]>

<![CDATA[自]]>

<![CDATA[至]]>

<![CDATA[$F{remark}]]>

<![CDATA[$F{keepCode}]]>

其他

本文不涉及有关ireport报表如何设计问题,有需要请自行查询 Y(_)Y

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:UVa 11464 Even Parity——思路题
下一篇:POJ 2378 Tree Cutting——树形dp
相关文章

 发表评论

暂时没有评论,来抢沙发吧~