文章目录

  • 前言
  • 一、UReport2是什么?
  • 二、使用步骤
    • 1.导入POM
    • 2.添加context.properties
    • 3.编写config配置类
    • 4.访问{ip}{端口}/ureport/designer
    • 5.配置数据源
    • 6.数据集配置
    • 7.数据映射
    • 8.过滤条件
    • 9.行列操作
    • 10.行类型
      • 1.标题行
      • 2.重复表头
      • 3.重复表尾
      • 4.总结行
  • 总结

前言

最近在公司里面要做对报表的修改,原项目用的是第三方报表软件,需要安装第三方软件,有水印,因此选择了基于Apache-2.0协议开源的中式报表引擎UReport2


一、UReport2是什么?

UReport2是一款高性能的架构在Spring之上纯Java报表引擎,通过迭代单元格可以实现任意复杂的中国式报表。
在UReport2中,提供了全新的基于网页的报表设计器,可以在Chrome、Firefox、Edge等各种主流浏览器运行(IE浏览器除外),打开浏览器即可完成各种复杂报表的设计制作。

二、使用步骤

当然该项目是基于springboot的,需要创建springboot工程

1.导入POM

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope>
</dependency>
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<dependency><groupId>com.bstek.ureport</groupId><artifactId>ureport2-console</artifactId><version>2.2.9</version>
</dependency>
<!--连接池-->
<dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.2.8</version>
</dependency>

2.添加context.properties

在resources目录下创建context.properties文件
内容为:

# 用于定义UReport2中提供的默认基于文件系统的报表存储目录
ureport.fileStoreDir=F:/ureportfiles

3.编写config配置类

@Configuration
//导入ureport-console-context.xml文件
@ImportResource("classpath:ureport-console-context.xml")
@Slf4j
public class ReportConfig implements BuildinDatasource {//添加 report 的servlet@Beanpublic ServletRegistrationBean<Servlet> ureport2Servlet() {return new ServletRegistrationBean<>(new UReportServlet(), "/ureport/*");}//这一步省略了创建配置文件@Beanpublic UReportPropertyPlaceholderConfigurer UReportPropertyPlaceholderConfigurer(){UReportPropertyPlaceholderConfigurer propertyConfigurer=new UReportPropertyPlaceholderConfigurer();propertyConfigurer.setIgnoreUnresolvablePlaceholders(true);ClassPathResource pathResource=new ClassPathResource("context.properties");propertyConfigurer.setLocation(pathResource);return propertyConfigurer;}//创建数据源,应该单独在一个配置类中,这里就写在同一个配置类中@Primary@Beanpublic DataSource businessDataSource(){DruidDataSource dataSource=new DruidDataSource();dataSource.setDriverClassName("com.mysql.jdbc.Driver");dataSource.setUrl("jdbc:mysql://localhost:3306/demo?useSSL=false&useUnicode=true&characterEncoding=UTF-8");dataSource.setUsername("root");dataSource.setPassword("root");return dataSource;}/*** 数据源名称**/@Overridepublic String name() {return "ReportSource";}/*** 获取连接**/@Overridepublic Connection getConnection() {try {return businessDataSource().getConnection();} catch (SQLException e) {log.error("Ureport 数据源 获取连接失败!");e.printStackTrace();}return null;}
}

省略的配置文件(因为用配置类配置类了,这里可以不用创建) ![如果不用配置类,那么用该配置文件也可以](https://img-blog.csdnimg.cn/ca898a98c219495fa0a4d1e5e0d5196a.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA6YW36YW355qE54ix5L2g,size_20,color_FFFFFF,t_70,g_se,x_16)

4.访问{ip}{端口}/ureport/designer

访问成功!

5.配置数据源

6.数据集配置







7.数据映射

映射前




映射后

8.过滤条件


过滤后

9.行列操作

行列操作和excel差不多
选择单元格,右键

10.行类型

1.标题行

不算行内容,此时显示的话行内容是2,标题行只显示1次

2.重复表头


3.重复表尾

重复表尾,和表头差不多,只不过一个是头,一个是尾

4.总结行

总结

UReport2使用起来还是比较方便的,和现有的项目集成起来也比较简单

相关代码查看我的gitee库
相关代码gitee

SpringBoot整合UReport2(报表开发)(配置类版)相关推荐

  1. SpringBoot整合微信支付开发在线教育视频网站(完整版)

    目录 ├─code.zip ├─第 1 章项目介绍和前期准备 │  ├─1-1 SpringBoot整合微信支付开发在线教育视频站点介绍.TS │  ├─1-2 中大型公司里面项目开发流程讲解.TS ...

  2. Springboot整合Poi导出excel(简单版)

    一. 问题引入 博客专栏: Springboot整合Poi导出excel(简单版) Springboot整合Poi导出excel(注解版) 总所周知Springboot是一个功能强大的微服务框架,集成 ...

  3. SpringBoot整合nacos实现参数配置

    SpringBoot整合nacos实现参数配置 1.nacos安装 2.项目配置 配置文件 3.nacos配置 4.启动 1.nacos安装 首先,这里的版本号用的是linux的1.4.1 链接:ht ...

  4. SpringBoot整合CXF框架开发

    在开发过程中遇到了一些使用webservice开发的需求,后查阅资料学习,可上手开发.在学习过程中实现了个小demo,为了养成良好的总结习惯(我还没这"坏习惯"),特意写了个小呆萌 ...

  5. Springboot整合Poi导出excel(注解版)

    简介 博客专栏: Springboot整合Poi导出excel(简单版) Springboot整合Poi导出excel(注解版) 上文提到通过poi简单导出Excel后,很多读者反应需要解决导出自适应 ...

  6. springBoot整合redis集群配置

    最近发现这篇博客阅读量比较大,今天特意抽空创建了一个可运行的开源项目. 项目的代码和之前的博客内容相比,做了些优化,请大家参考项目源码. 开源项目源码: springboot-redis-cluste ...

  7. springboot整合Quartz实现动态配置定时任务

    版权声明:本文为博主原创文章,转载请注明出处. https://blog.csdn.net/liuchuanhong1/article/details/60873295 前言 在我们日常的开发中,很多 ...

  8. SpringBoot自定义Starter(自动配置类)

    前言 SpringBoot其实从诞生以来围绕的核心就是快速构建项目,快速构建的前提是有人帮你做好轮子,开发者只要拿来即用就好了,而造好轮子的人就是SpringBoot的开发者,引入自动配置的形式帮助开 ...

  9. SpringBoot的@Conditional和自动配置类生效

    @Conditional原理    在之前的博客中提到了关于自动配置的原理,但是在自动配置的时候有很多的判断,只有当这些判断都成功之后在自动配置的时候才会成功.但是我们会发现一个问题,当我们使用@Be ...

最新文章

  1. BERT模型超酷炫,上手又太难?请查收这份BERT快速入门指南!
  2. dede php可以传多个参数,织梦分页标签dede:pagelist传参数
  3. 有哪些LSTM(Long Short Term Memory)和RNN(Recurrent)网络的教程?
  4. Spring-MVC入门(一):入门实例
  5. OEL6.8安装虚拟带库模拟器
  6. 最全三大框架整合(使用映射)——数据库资源文件jdbc.properties
  7. php htaccess实现缓存,使用.htaccess进行浏览器图片文件缓存,_PHP教程
  8. jquery-节点操作
  9. JQuery AJAX 加载 HTML代码“lt”形式的。怎么解析成形式,并且把img解析成图片输出到浏览器中。...
  10. # 根据三边求角度_小升初数学必学的10种图形求面积法,你家娃都会了吗?
  11. 10大开源文档管理系统_开源文档的5大趋势
  12. 【java】SPI机制详解
  13. n3k配置vpc是否还需要配置hsrp_VPC配置案例
  14. 【图的有向路径检查】程序员面试金典——4.2有向路径检查
  15. 看一点逻辑学,试图理解一点真相
  16. java 电子秤串口通信_js串口通信 调用MSCOMM32控件 链接电子秤(完整版实现方案)...
  17. 海底电缆变为“地震仪”
  18. win10无限重启服务器,win10系统更新kb4284835补丁失败无限重启的解决方法
  19. 你的爬虫是否徘徊在违法的边缘?
  20. linux启动和关闭防火墙命令

热门文章

  1. 什么是索引?Mysql目前主要的几种索引类型 和 引擎区别?
  2. sharepoint2013 如何在office365 下用infopath13开发formlibrary
  3. 2007最牛的50个站
  4. 小学四年级计算机工作总结,四年级小学生上学期个人总结
  5. raid5 合适 多少块硬盘_RAID5需要几块硬盘
  6. android仿支付提现功能,Android应用开发Android 仿微信支付密码界面
  7. 「BUAA OO Unit 1 HW4」第一单元总结
  8. Spring常用注解,以及注解的作用和简单用法
  9. 超详细的ERP流程剖析!(建议收藏)
  10. 编译原理实验二、 编译器认知实验报告