公告

👇 微信 👇

图片

欢迎大家私信交流

Skip to content

积木报表工具的使用

积木报表,是一款免费的数据可视化报表,含报表、打印、大屏和仪表盘,像搭建积木一样完全在线设计!功能涵盖:复杂报表、打印设计、图表报表、门户设计、大屏设计等! 分两大模块:JimuReport侧重传统复杂报表和打印、 JimuBI侧重数据大屏和仪表盘可视化设计!

1.1 为啥使用

不同的客户需要的报表数据与格式不同,如果针对不同的客户的定制化费时费力

1.2 环境搭建

依赖集成

xml
<properties>
    <!-- jdk版本号-->
    <java.version>1.8</java.version>
    <!-- DB驱动 -->
    <postgresql.version>42.2.6</postgresql.version>
    <ojdbc6.version>11.2.0.3</ojdbc6.version>
    <sqljdbc4.version>4.0</sqljdbc4.version>
    <mysql-connector-java.version>5.1.14</mysql-connector-java.version>
    <minio.version>8.0.3</minio.version>
</properties>
<!-- 配置远程仓库-->
<repositories>
    <repository>
        <id>aliyun</id>
        <name>aliyun Repository</name>
        <url>https://maven.aliyun.com/repository/public</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
    <repository>
        <id>jeecg</id>
        <name>jeecg Repository</name>
        <url>https://maven.jeecg.org/nexus/content/repositories/jeecg</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
</repositories>
<dependencies>
    <!--web-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <!--freemarker-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-freemarker</artifactId>
    </dependency>

    <!-- minio oss-->
    <dependency>
        <groupId>io.minio</groupId>
        <artifactId>minio</artifactId>
        <version>${minio.version}</version>
        <optional>true</optional>
    </dependency>

    <!-- JimuReport -->
    <dependency>
        <groupId>org.jeecgframework.jimureport</groupId>
        <artifactId>jimureport-spring-boot-starter</artifactId>
        <version>${version}</version>
    </dependency>
   <!-- 最新版本可以从 http://jimureport.com/doc/log  中查询到 -->

    <!-- 数据库驱动 -->
    <!--mysql-->
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.20</version>
        <optional>true</optional>
        <scope>runtime</scope>
    </dependency>
    <!--  sqlserver-->
    <dependency>
        <groupId>com.microsoft.sqlserver</groupId>
        <artifactId>sqljdbc4</artifactId>
        <version>${sqljdbc4.version}</version>
        <scope>runtime</scope>
    </dependency>
    <!-- oracle驱动 -->
    <dependency>
        <groupId>com.oracle</groupId>
        <artifactId>ojdbc6</artifactId>
        <version>${ojdbc6.version}</version>
        <scope>runtime</scope>
    </dependency>
    <!-- postgresql驱动 -->
    <dependency>
        <groupId>org.postgresql</groupId>
        <artifactId>postgresql</artifactId>
        <version>${postgresql.version}</version>
        <scope>runtime</scope>
    </dependency>
    
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <optional>true</optional>
    </dependency>
</dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

数据库脚本初始化: jimureport.sql

yaml配置

server:
  port: 9000
spring:
  #配置静态资源
  mvc:
    static-path-pattern: /**
  resource:
    static-locations: classpath:/static/
  #配置数据库
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/jimureport?characterEncoding=UTF-8&useUnicode=true&useSSL=false&tinyInt1isBit=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Shanghai
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver
#JimuReport[minidao配置]
minidao :
  base-package: org.jeecg.modules.jmreport.desreport.dao*
  db-type: mysql
#JimuReport[上传配置]
jeecg :
  jmreport:
    # 自动保存
    autoSave: true
    # 单位毫秒 默认5*60*1000 
    interval: 10000
  # local|minio|alioss
  uploadType: local
  # local
  path :
    #文件路径
    upload: D:\images
  # alioss
  oss:
    endpoint: oss-cn-beijing.aliyuncs.com
    accessKey: ??
    secretKey: ??
    staticDomain: ??
    bucketName: ??
  # minio
  minio:
    minio_url: http://minio.jeecg.com
    minio_name: ??
    minio_pass: ??
    bucketName: ??

#输出sql日志
logging:
  level:
    org.jeecg.modules.jmreport : debug

包扫描

@SpringBootApplication(scanBasePackages = {"org.jeecg.modules.jmreport","com.jimureport.demo"})

如果存在权限框架方向相关url

image-20260108104345952

测试访问: 访问报表工作台: {项目前缀}/jmreport/list

image-20260108104425232

1.3 使用介绍

数据集管理:主要是报表的数据来源:可以是数据库,API接口,JSON

image-20260108105349912

image-20260108105406392

1.3.1 模版制作

配置数据源,生成我们需要的数据

image-20260108105659442

image-20260108105734160

这里相当于我们写sql 查询报表需要的数据,与等一下我们制造模版进行对应

image-20260108105855948

这里没啥难度,主要是模版的制作需要美观,我们可以预览效果

image-20260108105953457

1.3.2 查询条件

我们需要的查询条件在数据集中配置

image-20260108110148673

1.3.3 字典配置

我们的后台查询的数据有很多字典,导出数据时不可能时字典值,这个时候需要翻译,点击数据字典进行维护

image-20260108110333141

image-20260108110309055

1.3.4 其他用法

参考官网:https://jimureport.com/reportDemo

image-20260108111627350

上次更新于: