• JasperReport原理解析之(一)


    1. 【加载原始文件】有iReport生成jrxml文件后,由jasperreport包中的类JRXml文件 加载和解析 jrxml文件。

       文件解析后生成  JasperDesign对象。

       JasperDesign对象可以利用代码动态的修改,官方不建议动态修改。

    2.【编译文件】JRCompiler类会根据jrxml文件的语言选择相应的语言,将JasperDesign对象编译为.jasper文件。并读入内存(如果实现已经编译好),生成JasperReport对象。

       若已生成.jasper文件,则调用JRLoader类将文件读入内存,生成JasperReport对象。

    3.【填充数据】类JasperFillManager对JasperReport对象进行数据填充。数据填充完毕后生成JasperPrint对象。该对象用于导出报表。

    4.【导出报表】根据导出的格式调用相应的exporter。一般常用的封装在类:JasperExporterManager中。

      导出报表具体2步:1)是相关导出参数配置  2)执行导出

    总结起来就三步:准备文件、填充数据、执行导出。

    【签名→→→】【****知其然知其所以然****】 工具只能帮助我们解决我们认识到的问题,解决不了我们都没理解的问题。 不能再把一切扔给框架、容器、工具! 首先理解你的业务逻辑,理解你要实现的功能, 然后搞清楚框架、容器、工具会帮助我们做什么。 只有理解了自己的业务逻辑,理解了自己的代码,理解了自己要用到的第三方代码, 才能真正完美地实现我们需要的功能!
  • 相关阅读:
    写在寒假
    Docker安装Redis(两种方式)
    JVM类加载机制
    RabbitMQ学习
    MySQL索引详解
    Java内存区域
    Window10下的Docker Desktop安装(保姆级教程)
    JVM垃圾回收
    力扣Hot100(目前进度89/100)
    C# 发送邮件实例
  • 原文地址:https://www.cnblogs.com/yaowukonga/p/3185901.html
Copyright © 2020-2023  润新知