java-Oracle是否会自动回滚废弃的会话?

有什么方法可以保证应用程序不会在Oracle中释放行锁吗?如果我确保将commit语句放在finally块中,则可以处理意外错误的情况,但是如果应用程序进程在提交前突然中断(或者有人将电源线/局域网电缆拔出),该怎么办.

有没有办法让Oracle在X时间后自动回滚空闲会话?还是在我以某种方式检测到连接丢失时回滚?

根据我所做的实验,如果我在提交某个应用程序进程之前终止了该进程,则行锁将永久保留,直到我登录数据库并手动终止该会话为止.

谢谢.

解决方法:

尝试在sqlnet.ora中设置sqlNET.EXPIRE_TIME.

sqlNET.EXPIRE_TIME=10

documentation

Purpose
To specify a time interval, in minutes, to send a check to verify that client/server connections are active.

相关文章

连接数据库的方式:第一种方式:ODBC:开放数据库连接是微软...
JDBCRequest 使用VariableNamesmysql:数据库连接池对象var...
 1.JDBCDBC(JavaDataBaseConnectivity):Java数据库连接技术...
1.需要jar包的支持:java.sqljavax.sqlmysql-conneter-java....
1.简介Activiti是一个业务流程管理(BPM)框架,它是覆盖了业务...
1.JDBC体系系统一组规范:接口JDBC接口(API)包括两个层次:...