【发布时间】:2013-08-26 16:38:45
【问题描述】:
这是从 Java 调用的 Oracle 过程的代码:
CallableStatement st = connection.prepareCall("{call PROCEDURE_0(?,?,?)}");
st.setInt(1,xyz1);
st.setString(2,xyz2);
st.setInt(3,int_variable);
st.registerOutParameter(3,Types.INTEGER);
try{
st.execute();
}
catch(Exception e){
}
如果用户在此 Java JVM 上调用 System.exit() - 调用的 Oracle 过程会发生什么情况?是否保证在 Oracle 中继续运行?或者,为了保证这一点,我应该将其提交给 Oracle 作业调度程序?到目前为止,我的经验是,有时即使 JVM 终止,程序也会继续运行,有时则不会。这与“注册输出参数”有什么关系?如果 System.exit 被调用,代码会到达 catch 块吗?
有人有这方面的经验吗?
【问题讨论】:
-
不是它不会继续运行。您的会话将在某个时候终止。
-
好的,提交到Oracle作业调度器会解决这个问题吗?
标签: oracle stored-procedures jvm system.exit