我们将为一个基于 Oracle 数据库的大型系统编写一个新的 Web 界面。所有业务规则都已编码在PL/SQL
存储过程中,我们希望尽可能多地重用代码。我们将编写一些新的存储过程,它们将结合现有的业务规则并返回最终结果数据集。
我们希望在数据库级别执行此操作以避免 java-db 往返。接口层将用 Java 编写(我们希望使用 GWT),因此我们需要一种将数据从 Oracle 存储过程传递到 Java 服务端的方法。数据可以是例如特定项目的一组属性或满足特定标准的项目列表。有人会推荐一种更好的方法吗?
我们正在考虑以下两种情况之一:
传递对象和对象列表(在模式级别定义的 DB 对象类型)
通过一个
sys_refcursor
我们验证了这两种方法都是“可行的”,问题更多的是关于设计决策、最佳实践、可能的维护问题、灵活性等。
我会很感激任何提示。