java 接入水晶报表实现代码自定义数据源(新手接触水晶报表)

公司项目需要,要求接入水晶报表,但是本人之前完全没有接触过水晶报表,结果为了完成任务,只能硬着头上了。期间遇到许多麻烦,总算是将水晶报表接入到了freemarker项目了,结果现在被水晶报表数据源的动态设定给难住了。现在针对这个问题做下总结。

一、项目要求

1. 水晶报表的调用需要用pull模式,即系统只提供数据库连接信息和查询参数,其他的工作由水晶报表本身完成,如查询sql,数据库连接

2. 系统保证各个数据库的查询表结构一致,系统需要支持数据源的动态化,根据提供的数据库连接信息进行更改。

二、问题情况

为了完成要求,到网上查询资料,借书翻阅,发现水晶报表链接数据库的方法主要就介绍两种:

1. 用rpt本身内含的数据源链接,代码只传入用户名和密码;

2. 采用push模式,也就是由系统链接数据库后查询出数据再赋值给报表展示;

第一种肯定是没有满足要求,因为这种方式的数据库链接已经限定为了rpt设置内容,如果要更换数据源,就需要重新设置rpt再上传,在实际的使用过程中肯定不满足。

第二种方法虽然可以实现动态的更改数据源,但是这种方式水晶报表的应用就比较简单了,基本上只当显示控件使用,而且跟项目要求也有出入,只能在最终没有其他解决方法的时候才考虑。

三、解决方案

四、参考文献地址

http://my.oschina.net/l1z2g9/blog/157279


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值