一种不等待 EJB 中的 JPA 查询结果的方法

A way to not wait for JPA query result in EJB

我想知道有没有办法在ejb中不等待JPA查询结果 我必须调用一个存储过程 whit JPA,它在 Oracle 数据库上进行一些大量复杂的处理, 我找到了 javax.ejb.Asynchronous 但我不想为此创建一个 thead,只需调用并忘记 sotred 过程

谢谢

JPA一般基于的JDBCAPI是同步的,所以不创建副线程等待JDBC到[=19=就无法达到你想要的效果].一种替代方法是在 Oracle 中创建一个辅助存储过程,它只安排立即执行主存储过程和 returns。然后您将从 Java.

调用辅助存储过程

排序:

create or replace procedure schedule_myjob is
begin
    -- search documentation for 
    dbms_job.submit('myjob', ....);
    -- NOTE: dbms_job.submit will not have effect until you commit
    -- your transaction. 
end schedule_myjob;

create or replace procedure myjob is
begin
   -- Your main procedure code
   ...
end myjob;