UReport2初体验

1.产品介绍

UReport2是一款纯Java的高性能报表引擎。 其优点在于:是开源的,基于Apache-2.0开源协议;其次,在项目中直接集成网页端报表设计器,灵活、方便、易维护和管理;另外,可以实现任意复杂的中国式报表。

本文档介绍Spring Boot集成UReport2报表引擎方案,旨在详解从0到1的具体实现步骤,为后续高阶方案提供知识基础及实践经验。

2.工程搭建

2.1 新建Maven项目

推荐使用Spring Initializr创建,能自动添加很多依赖,如下所示:

选择Spring Boot版本,并按需添加依赖,这里暂不需要依赖,可不选,如下所示:

2.2 POM文件修改

2.2.1 Repository

需要注意的是,在 http://search.maven.org/ 上我们只能查找到最新的release版本,如果您需要最新的snapshot,那么可以到 https://oss.sonatype.org/ 上查找。

<repository>
    <id>sonatype</id>
    <url>https://oss.sonatype.org/content/groups/public/</url>
</repository>

2.2.2 dependency

在POM中添加UReport2和Spring Boot依赖,此处依赖UReport2 2.2.9版本,Spring Boot 2.0.6 RELEASE版本。如下所示:

<dependency>
  <groupId>com.bstek.ureport</groupId>
  <artifactId>ureport2-console</artifactId>
  <version>2.2.9</version>
</dependency>

2.3 注册ServletRegistrationBean实例

Spring Boot提供两种Servlet整合方式:注解扫描方式和组件注册方式,此处组件注册方式更加适用。

首先,注册ServletRegistrationBean实例,并将UReportServlet实例作为构造参数传入ServletRegistrationBean实例,然后为ServletRegistrationBean实例增加Url映射。如下所示:

    @Bean
    public ServletRegistrationBean reportServlet(){
        ServletRegistrationBean bean = new ServletRegistrationBean(new UReportServlet());
        bean.addUrlMappings("/ureport/*");
        return bean;
    }

注意:值为“/ureport/*”的url-pattern是一定不能变的,否则系统将无法运行。

2.4 设置Properties参数

2.4.1 添加classpath

@ImportResource("classpath:ureport-console-context.xml")

2.4.2 设置Property

package com.example.demo;

import com.bstek.ureport.UReportPropertyPlaceholderConfigurer;
import java.util.Properties;

/**
 * @author Allen
 * @date 2021/08/09
 * <p>
 * 重写默认的 PropertyPlaceholder
 */
public class UReportPropertyPlaceholderConfigurerPlus extends UReportPropertyPlaceholderConfigurer {

    public UReportPropertyPlaceholderConfigurerPlus() {
        Properties properties = new Properties();
        properties.setProperty("ureport.debug", "false");
        properties.setProperty("ureport.fileStoreDir", "F:/UReport");
        properties.setProperty("ureport.disableHttpSessionReportCache", "false");
        this.setProperties(properties);
    }

}

其中ureport.fileStoreDir为报表存储路径。

默认报表存储目录
如果采用tomcat运行项目,那么在WEB-INF目录下就没有一个名为“ureportfiles”目录,原因是在IEDA中运行tomcat,tomcat需要创建一个临时的工作目录(该目录一般位于workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\下),

所以采用tomcat运行项目,则需要到这个临时的工作目录下找到对应的项目,再到这个项目的WEB-INF目录下找到对应的“ureportfiles”目录。

2.4.3 增强默认Ureport配置

@Bean
public UReportPropertyPlaceholderConfigurer uReportPropertyPlaceholderConfigurerPlus() {
    return new UReportPropertyPlaceholderConfigurerPlus();
}

2.5 项目启动

至此,我们已经搭建完成Spring Boot集成UReport2报表引擎工作,编译运行项目,在浏览器中访问URL,就可以看到UReport2的报表设计器界面

项目启动,本地访问路径:http://localhost:8080/ureport/designer###

3.属性设置

3.1 数据源配置

打开UReport2的报表设计器,可以看到UReport2提供了三种类型的报表数据源,如下所示:

三种类型的数据源分别是直接连接数据库,Spring Bean以及通过实现com.bstek.ureport.definition.datasource.BuildinDatasource接口提供的内置数据源。

本文档重点介绍直接连接数据库,就是在项目的classpath中添加好相应数据库的驱动Jar包后,在弹出的窗口中配置数据源连接信息即可

注意驱动名称选择com.mysql.cj.jdbc.Driver或者com.mysql.jdbc.Driver

3.2 添加数据集

3.2.1 选择配置好的数据源,添加数据集

3.2.2 设置SQL

3.2.3 设置参数

上述SQL中,有参数:del_flag,需要设置类型,

预览数据

3.2 表格值设置

3.2.1 文本类型

选中单元格,设置属性

3.2.2 数据集类型

4.报表查验

4.1 预览

4.2 保存

4.2.1 默认保存路径

默认orkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\下

4.2.2 指定保存路径

参数设置2.4.2 ureport.fileStoreDir 设置对应值,如下所示

 properties.setProperty("ureport.fileStoreDir", "F:/UReport");

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值