我们将为基于Oracle数据库的大型系统编写一个新的Web界面。所有业务规则已经在PL/SQL
存储过程中编码,我们希望尽可能重复使用尽可能多的代码。我们将编写一些新的存储过程,将结合现有业务规则并返回最终结果数据集。将数据从Oracle存储过程传递到Java
我们希望在数据库级别执行此操作以避免java-db往返。接口层将用Java编写(我们希望使用GWT),所以我们需要一种将数据从Oracle存储过程传递到Java服务端的方法。数据可以是例如符合特定条件的特定项目或项目列表的一组属性。 有人会推荐一个更好的方法吗?
我们正在考虑的2种以下情形之一:
传递对象的对象和列表(在 架构级定义的数据库对象类型)
传递
sys_refcursor
我们证实了这两种方法是“可行的”,问题更多的是设计决定,最好的做法,可能的维护问题,灵活性等
我会很感激的任何提示。
这个问题的答案是什么? OP已经知道如何去做;他会问问哪种方法更好。 –
'@Vineet Reynolds'“有人会推荐一个更好的方法吗?” - 并且在此之前阅读场景。 – Bitmap
考虑发布其他答案,推荐使用CallableStatement添加了什么值?也许你应该按照你自己的建议来阅读场景;使用对象类型和引用游标并不容易,长期来看也不可维护,并且OP正在这些领域寻求建议。 –