个人学习系列 - Spring Boot 整合 UReport2

工作中总是需要生成各种各样的报表,麻烦的很。最近发现了一个UReport2,据说可以实现复杂的中国式报表,有点小激动。。。

1. 新建springboot项目

1.1 pom.xml
<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>
1.2 application.yml
server:
  port: 8888
# 数据库链接 数据源配置
spring:
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://IP地址:3306/数据库名称?useSSL=false&useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&tinyInt1isBit=false&serverTimezone=GMT%2B8
    username: 数据库用户名
    password: 数据库密码
1.3 编写config代码类,用于配置UReport2
/**
 * springboot实体类配置
 * context.xml为UReport2的配置文件
 * @author zhouzhaodong
 */
@ImportResource("classpath:context.xml")
@Configuration
public class BeanConfig {

    @Bean
    public ServletRegistrationBean<Servlet> ureport2Servlet() {
        return new ServletRegistrationBean<>(new UReportServlet(), "/ureport/*");
    }

}
1.4 新建UReport2的配置文件context.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
    <import resource="classpath:ureport-console-context.xml"/>
    <!-- 引入配置文件 -->
    <bean id="propertyConfigurer" parent="ureport.props">
        <property name="location" value="classpath:context.properties"/>
    </bean>

</beans>
1.5 新建context.properties

这里我主要是在这里定义UReport2中提供的默认基于文件系统的报表存储目录:

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

这里需要注意的是,我们设置在ureportfiles文件夹下面存储报表,这个文件夹需要我们手动创建,否则无法保存。。。

1.6 这里需要定义内置数据源

这里需要注意的是数据源连接方式有三种:

  1. 直接连接数据库,就是在项目的classpath中添加好相应数据库的驱动Jar包后,在弹出的窗口中配置数据源连接信息即可,如下图所示:
    图片.png
  2. Spring Bean,选择Spring上下文中定义好的一个Bean来作为数据源,点击图标,在弹出的窗口中输入数据源名称及要采用的Bean的ID,如下图所示:
    在这里插入图片描述

保存后,就可以在这个数据源下添加具体的数据集,添加方法就是在这个数据源下右键,在弹出的菜单中选择添加数据集,在弹出的窗口中定义数据集名称、对应的方法名以及返回对象类型,如下图所示:
在这里插入图片描述

  1. 通过实现com.bstek.ureport.definition.datasource.BuildinDatasource接口提供的内置数据源:
    之前已经在application.yml里面配置数据库信息了。
/**
 * Ureport 数据源
 *
 * @author zhouzhaodong
 */

@Component
public class UreportDataSource implements BuildinDatasource {
    private static final String NAME = "MyDataSource";
    private final Logger log = LoggerFactory.getLogger(UreportDataSource.class);

    @Resource
    private DataSource dataSource;

    /**
     * 数据源名称
     **/
    @Override
    public String name() {
        return NAME;
    }

    /**
     * 获取连接
     **/
    @Override
    public Connection getConnection() {
        try {
            return dataSource.getConnection();
        } catch (SQLException e) {
            log.error("Ureport 数据源 获取连接失败!");
            e.printStackTrace();
        }
        return null;
    }

}

2. 测试

2.1 启动项目

控制台打印如下信息代表成功:
图片.png

2.2 访问http://localhost:8888/ureport/designer

图片.png
访问地址根据配置文件得到的:
图片.png

2.3 设置数据源

图片.png
图片.png
图片.png
图片.png
图片.png
点击确定后数据源就搞完了,当然那些复杂的数据查询自己搞去吧!

2.4 设置报表

图片.png
图片.png
图片.png
在这里插入图片描述

2.5 保存报表

图片.png
图片.png
在这里插入图片描述

图片.png

2.6 各种类型下载链接

图片.png
图片.png

个人博客地址

http://www.zhouzhaodong.xyz

GitHub源码地址

https://github.com/zhouzhaodong/springboot/tree/master/spring-boot-ureport2

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: Spring Boot是一种用于创建独立的、基于Spring的应用程序的框架。而UReport2是一种基于Java的开源报表工具,它支持多种数据源,并具有强大的报表设计和生成功能。 要在Spring Boot中引入UReport2的源码,可以按照以下步骤进行操作: 1. 下载UReport2的源码:可以从UReport2的官方网站或GitHub仓库中下载源码。 2. 创建Spring Boot项目:使用IDE或命令行工具创建一个新的Spring Boot项目。 3. 导入UReport2的源码:将下载的UReport2源码复制到Spring Boot项目中的合适位置。 4. 配置依赖:打开Spring Boot项目的pom.xml文件,并添加UReport2的依赖项。这些依赖项包括UReport2的核心库以及相关的依赖库。 5. 配置报表引擎:在Spring Boot项目的配置文件中,配置UReport2的报表引擎。这包括指定报表引擎的类型、数据源的配置等。 6. 编写报表代码:根据项目需求,编写UReport2的报表代码。这包括报表设计、数据源的设置、报表生成和展示等功能。 7. 运行项目:启动Spring Boot项目,访问报表的URL路径,即可进行报表的生成和展示。 通过以上步骤,就可以在Spring Boot项目中成功引入UReport2的源码,并使用其强大的报表功能。注意,在整个过程中,需要按照UReport2的文档和示例进行配置和使用,以确保正确集成和使用UReport2。 ### 回答2: 要引入ureport2源码,首先需要在项目的pom.xml文件中添加ureport2的依赖。可以通过在spring boot项目的pom.xml文件中,添加如下依赖: ```xml <dependency> <groupId>com.bstek.ureport</groupId> <artifactId>ureport2-spring-boot-starter</artifactId> <version>2.9.7</version> </dependency> ``` 引入该依赖后,需要在项目的配置文件中进行相应的配置。在application.properties或application.yml文件中,可以添加以下配置项: ```yaml # ureport配置 ureport: config-file: classpath:ureport/ureport.xml ``` 其中,`ureport.config-file`配置项指定了ureport的配置文件路径。 接下来,在项目中创建ureport配置文件对应的文件夹,并在文件夹中创建ureport.xml配置文件。ureport.xml文件用于配置ureport的一些参数,如数据源、报表资源等。 最后,你可以在spring boot项目中通过注入ureport的相关Bean来使用ureport的功能。例如,可以在Controller中注入`UReportService`或`ReportFileStore`等Bean来实现报表的生成与管理。 总结起来,引入ureport2源码可以通过以下步骤实现: 1. 添加ureport2的依赖到项目的pom.xml文件中。 2. 在项目的配置文件中进行ureport的相关配置。 3. 创建ureport配置文件,并进行相应的配置。 4. 在项目中使用相关的ureport Bean来实现报表的生成与管理。 ### 回答3: 要引入ureport2源码到Spring Boot项目中,可以按照以下步骤操作: 1. 首先,从ureport2的官方仓库(如GitHub)下载ureport2的源码。 2. 创建一个新的Spring Boot项目,可以使用Spring Initializr(https://start.spring.io/)进行快速初始化。确保选择正确的依赖项,如Spring Web和Spring Boot DevTools。 3. 将下载的ureport2源码解压缩,并将其拷贝到Spring Boot项目的src/main/java文件夹下。 4. 打开ureport2源码中的pom.xml文件,并复制其所有的依赖项。 5. 将复制的依赖项粘贴到Spring Boot项目的pom.xml文件中的<dependencies>标签下。 6. 在Spring Boot项目的src/main/resources文件夹下,创建一个ureport文件夹。 7. 将从ureport2源码中复制的src/main/resources/ureport文件夹下的所有文件和文件夹拷贝到Spring Boot项目的src/main/resources/ureport文件夹下。 8. 在Spring Boot项目的src/main/resources/application.properties文件中,添加ureport2所需的数据库配置(如数据库连接url、username和password)。 9. 在Spring Boot项目的src/main/java的启动类中,加入@EnableAutoConfiguration注解来自动配置ureport2所需的bean。 10. 根据需要,可以根据Spring Boot项目的具体情况,调整ureport2的配置文件,如ureport.properties和ureport.xml。 11. 启动Spring Boot项目,ureport2就会被成功引入到项目中。 以上是将ureport2源码引入到Spring Boot项目的简要步骤。根据具体情况,可能会有一些细微的调整和配置。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值