从Java执行存储过程,而不是使用JDBC CallableStatement

时间:2014-07-28 00:55:47

标签: java stored-procedures jdbc callable-statement ocpjp

我正在使用其中一个模拟测试套件准备 Java 7 认证。

我偶然发现的一个测试问题是 JDBC CallableStatement类,其中一个正确答案(根据工具)是:

  

CallableStatement 是执行Java程序的唯一方式   如果过程已进入和退出,则存储过程在数据库中   参数。

这对我来说似乎非常冒昧,我想知道是否有现有的库(例如可能是专有的db库),它们允许在没有 JDBC 的情况下运行存储过程?

2 个答案:

答案 0 :(得分:1)

我认为这取决于细微差别他们正在寻找的答案。由于大多数 Java SQL 技术/框架在某种程度上依赖于 JDBC ,或许可以说它们将它抽象出来,但它仍然在技术上涉及

但是,我可以使用MyBatis来调用存储过程而无需直接调用 CallableStatement 或与 JDBC 相关的任何内容。在这种情况下,我将在映射文件中定义<select>语句,该语句调用存储过程。它可以接受参数并返回值。

答案 1 :(得分:1)

MyBatis,Hibernate / JPA和其他开源框架都在表下使用JDBC。