当使用MQ时,JavaEE jar在11g中的Oracle java存储过程中扮演什么角色

当使用MQ时,JavaEE jar在11g中的Oracle java存储过程中扮演什么角色,oracle,api,jakarta-ee,ibm-mq,java-stored-procedures,Oracle,Api,Jakarta Ee,Ibm Mq,Java Stored Procedures,我需要编写一个Oracle Java存储过程,以便使用该存储过程将消息写入MQ。我按照林克的指示去做,结果成功了。根据链接,它需要将JavaEEAPIJAR加载到数据库中 但是现在我对javaeejar在oraclejava存储过程中的角色有疑问。据我所知,这些JAR只包含接口,没有实现 JavaEEJAR在Oracle Java存储过程中扮演什么角色 如果它没有实现细节,那么在运行时从何处获取 我已经能够在不使用这些jar的情况下编写简单的Java存储过程,那么在什么情况下需要使用这个jar呢

我需要编写一个Oracle Java存储过程,以便使用该存储过程将消息写入MQ。我按照林克的指示去做,结果成功了。根据链接,它需要将JavaEEAPIJAR加载到数据库中

但是现在我对javaeejar在oraclejava存储过程中的角色有疑问。据我所知,这些JAR只包含接口,没有实现

  • JavaEEJAR在Oracle Java存储过程中扮演什么角色
  • 如果它没有实现细节,那么在运行时从何处获取
  • 我已经能够在不使用这些jar的情况下编写简单的Java存储过程,那么在什么情况下需要使用这个jar呢
  • 它包含EJB、JMS、资源管理器、JDBC(javax.sql)、事务等服务的接口。这是为了确保使用这些接口的应用程序可以安装在不同的应用程序服务器中。由应用程序服务器提供者编写实现,但在客户端应用程序中并不直接需要这些实现

  • 例如,要获得连接,需要使用命名服务查找工厂。查找的结果必须转换到接口(因为命名服务返回
    Object
    s)。因此,您需要处理接口,但当然后台有一个特定于供应商的类来实现它

  • 如果从JDBC客户机调用Java存储过程,那么数据库也可以被视为应用程序服务器。因此,从理论上讲,在Java应用程序服务器中执行的任何操作也可以在存储过程中完成:它是JMS,可能还有事务服务,或者对其他EJB服务器的调用。但这不是常见的做法,我也不知道有任何限制