我正在使用从数据库(Oracle)检索的数据创建pdf报告。对于每个报告,我正在进行数据库调用。我想优化多个报告的调用(最多可以有500个报告)。在当前场景中,我正在进行500次DB调用,这会导致服务器超时
我正在寻找解决方案和答案
的 1 即可。我可以将数据列表作为输入传递给查询吗? (查询需要2个输入。)
的 2 即可。整套数据检索应该在1个DB呼叫中进行,而不是500个单独的呼叫
3 即可。响应应该是500输入的累计结果
请提出解决方法或解决问题的方向?
这是一个基于Java的系统。数据库调用来自Web应用程序。 DB:Oracle。
谢谢!
答案 0 :(得分:3)
如果你想在单个数据库调用中获取任意数量的“报告”的数据,那么我想你需要调用一个存储过程,它返回一个非常大的XML或JSON文本块,你可以然后解析并显示在您的应用程序中。 Oracle具有用于构造XML的内置函数,并且JSON很容易构建自己(虽然我相信可以使用第三方PL / SQL JSON包)。
答案 1 :(得分:2)
有几种方法可以合并多个查询的结果。