springboot 2.X整合帆软报表FineReport v10.0 最完整说明附带源码

我使用的是Springboot 2.1.0,FineReport v10.0,Eclipse开发环境,代码运行后能直接访问报表也可以将报表嵌入中,进行页面跳转,并增加按照其他文章配置不能成功的问题点说明和注意事项。

第一步:新建一个spring boot项目,此处不赘述。

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

第二步:下载FineReport

官网下载地址

第三步:修改springboot项目配置

  1. 修改pom.xml打包方式为war包,修改完之后更新项目
<packaging>war</packaging>

在这里插入图片描述

		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
			<exclusions>
				<exclusion>
					<groupId>org.springframework.boot</groupId>
					<artifactId>spring-boot-starter-tomcat</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<scope>provided</scope>
		</dependency>

在这里插入图片描述

在这里插入图片描述
更新完项目结构会发生变化,如下,src/main下会增加一个webapp文件夹,如果没有,请自行创建
在这里插入图片描述
springboot启动类要集成SpringBootServletInitializer,重写configure方法

@SpringBootApplication
public class DemoApplication extends SpringBootServletInitializer {

	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}

	@Override
	protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
		return builder.sources(DemoApplication.class);
	}

}

在这里插入图片描述

  1. 复制报表安装目录下的webapps/webroot下的WEB-INF文件夹到上述项目的webapp文件夹下,此处可以不用全部复制,但是我为了让整个过程简单易于理解先这样干了,等项目运行成功后读者慢慢熟悉了项目,可以根据官网的说明只复制必须的文件。
    在这里插入图片描述
    在这里插入图片描述
    将%JAVA_HOME%/jdk/lib下的tools.jar拷贝到你的项目的webapp的WEB-INF的lib文件夹下.

在这里插入图片描述

第四步:在Eclipse配置tomcat
1.下载tomcat
2.点击server添加tomcat
在这里插入图片描述
在这里插入图片描述
右击tomcat v9.0
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
双击tomcat V9.0 server打开配置页面,默认的端口是8080,时间设置为60秒,保存
在这里插入图片描述
然后右击,Star项目

第五步:在浏览器打开指定的cpt文件

WEB-INF/reportlets下有帆软自带的模板cpt文件
在这里插入图片描述
查看自己的项目名称
在这里插入图片描述
修改下面的链接访问你自己的项目,建议一开始先新建项目按照我的例子成功运行后,自己分析然后再迁移至正式项目
在这里插入图片描述

第六步:将cpt文件嵌入html中,方便灵活开发

在src/main/resources/templates文件夹下新建index.html内容如下

在这里插入图片描述

在这里插入图片描述

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>demo</title>
</head>
<body>
	<h1>Welcome index !</h1>
	<iframe id="reportFrame" width="1800" height="800"
		src="/demo/decision/view/report?viewlet=GettingStarted.cpt"></iframe>
</body>
</html>

注意上述路径
修改application.properties的内容,一般新建的项目内容是空的
在这里插入图片描述
注意细节是一致的

spring.freemarker.template-loader-path=classpath:/templates/
spring.freemarker.cache=false
spring.freemarker.charset=UTF-8
spring.freemarker.check-template-location=true
spring.freemarker.content-type=text/html
spring.freemarker.expose-request-attributes=true
spring.freemarker.expose-session-attributes=true
spring.freemarker.request-context-attribute=request
spring.freemarker.suffix=.html

在DemoApplication.java同一文件夹下创建controller包,包下新建TestController类
在这里插入图片描述

package com.example.demo.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class TestController {

	@RequestMapping("index")
	public String index() {
		return "index";
	}
}

访问指定路径即可打开报表,但是这个报表查询时会报错,是因为报表数据集设置的问题,具体操作就是另一个知识点了,请查看官方开发文档说明。
在这里插入图片描述
如有问题请联系QQ736812983

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值