过程登记到SQL上 对SQL来说,每个PL/SQL过程自动就是可见的。反之,在使用Java的时候,所有的Java方法对SQL来说都是不可见的 要让一个Java方法能够作为存储过程,在SQL里调用它,就必须显式地把它“发布”到SQL当中。Java 类和方法不会自动地发布到数据字典、SQL和PL/SQL里,原因有二:
Java应用程序里的大多数方法,通常是由其它Java程序调用;而且Java到Java的调用,发生在Java虚拟机环境里,没有必要暴露给SQL。
SQL编译器需要有关SQL数据类型到Java数据类型如何映射参数的指导,还需要正确重载调用的信息,以便给出与原始实际参数值对应的SQL数据类型。这需要开发人员的干预,所以只有某些顶级Java方法需要在SQL和PL/SQL里调用。