本文主要介绍SpringBoot integration Ureport2报表和常用的使用方法。通过示例代码进行了非常详细的介绍,对大家的学习或者工作都有一定的参考价值。有需要的朋友下面跟边肖学习。
1、Maven 添加依赖
!- ureport -
属国
groupIdcom.syyai.spring.boot/groupId
artifactIdureport-spring-boot-starter/artifactId
版本2 . 2 . 9/版本
/依赖关系
2、编写ureport2 的配置类
类配置实现BuildinDatasource。
1)注册Bean
2)重命名ureport2的数据源名称
导入com . bstek . ure port . console . ureportservlet;
导入com . bstek . u report . definition . data source . buildindatasource;
导入org . slf4j . logger;
导入org . SLF 4j . logger factory;
导入org . spring framework . boot . auto configure . enable auto configuration;
导入org . spring framework . boot . web . servlet . servletregistrationbean;
导入org . spring framework . context . annotation . bean;
导入org . spring framework . context . annotation . configuration;
import org . spring framework . context . annotation . import resource;
导入javax . annotation . resource;
导入javax . SQL . data source;
导入Java . SQL . connection;
导入Java . SQL . SQL exception;
@ import resource(' class path:u report-console-context . XML ')//无法启动任何项目,但会导致加载数据源报错或加载失败。
@配置
@启用自动配置
公共类UreportConfig实现BuildinDatasource {
@资源
数据源data source;
private Logger log=Logger factory . get Logger(getClass());
@Bean //定义ureport的启动servlet
public ServletRegistrationBean buildUreportServlet(){
返回新的ServletRegistrationBean(new UReportServlet(),'/ureport/* ');///ureport/*不能更改。
}
@覆盖
公共字符串名称(){
返回“ureport2数据源”;
}
@覆盖
公共连接getConnection() {
尝试{
返回data source . getconnection();
} catch (SQLException e) {
log . error(' u报告数据源无法获取连接!');
e . printstacktrace();
}
返回null
}
}
3、ureport2 访问路径
3358127 . 0 . 0 . 1:8080/项目名称/u报告/设计者
4、选择数据源方式:内置数据源
报表2的配置类实现了BuildinDatasource,即可以直接使用内置数据源。
5、选择数据源方式:SpringBean数据源配置
数据源名称:用户定义的命名
Bean ID:Bean object - yjReportService,与java类名一致。首字母需要小写。
6、添加Sping Bean 数据源的数据集
数据集名称:自定义
方法名:您配置的Bean对象中方法的名称,即服务中的方法。此方法必须包含3个参数,否则无法找到。
Object:报表中返回数据的接收对象,全路径名,可选,手工添加返回字段(不尝试)。
报表编辑完成后的参数传输方式:http://127.0.0.1:8088/项目名称/ureport/preview?_ u=文件:报表名称参数=参数值
业务逻辑编码:可以接收参数值。
7、内置数据源方式配置数据集
有两种方式配置数据集:
1.使用SQL语句查询数据。
2.使用$ {expression}:也是SQL的形式,用字符串拼接。
7.1、SQL的使用方式
正常写SQL,要传递的参数用':'加字段名表示。
可以添加默认参数,设置的参数名称与SQL中的一致。
如果没有传递参数,将使用默认参数进行查询。
如果有多个参数,以同样的方式添加它们。
示例:select * from表,其中id=:id
报表制作完成后,报表参数的传输方式为:http://127.0.0.1:8080/项目名称/ureport/preview?_u=file:报告名称iid=参数值
7.2.使用{ expression }方法。
表达式通常用于动态SQL查询数据。
将外部参数传递到报表后进行查询。
U 2如何获取参数:param("参数字段")
示例:${ SQL语句}
先看最终效果:报表显示在iframe页面,外部参数传入报表查询数据。
7.2.1、制作报表:
使用${ sql语句}的注意事项:
如果SQL包含用单引号括起来的字符串,您需要添加“\”来转义单引号,否则将会出现语法错误。
判断参数是否对外传递有两种方式:
1.使用三元表达式:判断是否为空,不为空则拼接SQL语句条件。
示例:(param("参数名")!=null param("参数名")!='' ?" and field='" param("参数名")' ':" " "
2.使用功能(简洁)。可以添加参数或者直接获取参数。
1)添加参数的方法(参考上面sql参数传递的方法,field):(emptyparam(" name ")==false?" and name=:name ":" ")
2)直接获取参数的方法:
(emptyparam("name")==false?" and name=" \ ' " param(" parameter name ")" \ ' ':' ')
注意sql语句前后空格和单引号加\字符串拼接后的问题。
${
从表1 a '中选择
' b.id=a.id上的左连接表2 b '
其中1=1 '
(param('参数名')!=null param('参数名')!='' ?
And field=\'' param('参数名')' \ ':' ')
)t '
}
报表制作完成后,报表参数的传输方式为:http://127.0.0.1:8080/项目名称/ureport/preview?_u=file:报表名称参数名称=参数值
8、点击报表的数据跳转页面,查看详情
终极
添加需要跳转到URL配置报告的地方。
如果报表中的参数需要通过URL传递,请单击URL参数配置。
URL:自行配置,当前目录应添加“点/”。
示例:/yw/ssj/SearchList
8.1.配置在URL上传递的参数
如果将当前单元格的数值作为参数,则值表达式应为:#
如果将当前单元格中对象的其他属性作为参数,则值表达式为:#。属性名称。
如果获取外部传入报表的参数作为参数,则值表达式为:param("参数名称")。
9、某些数据为数值,对应的数据解释
获取的数据库数据是数字ID,单元格的数据显示需要重新设置。
单击要添加的数据映射。
例:1代表成功。0表示失败,等等
10、格式化单元格,区分标识数据
目标效应
10.1、报告编辑
单击要格式化的单元格中的配置条件。
分别配置超标和不达标单元格的格式颜色。
配置条件时:
1.如果当前值是数值类型,只需填写数值条件。
2.如果当前值是字符串类型,则值表达式需要给字符串加上单引号:“当前值”
如果选择表达式方法:参考前面的值表达式的编写方法(配置URL上传递的参数有说明)
报告2的使用说明
关于SpringBoot的集成Ureport2报告和常用使用方法的这篇文章到此为止。关于SpringBoot的集成Ureport2的更多信息,请搜索我们之前的文章或者继续浏览下面的相关文章。希望大家以后能多多支持我们!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。