企业erp项目。web模式,前台jsp,走struts框架。用到ejb。后台oracle数据库
一般这种模式采用什么办法控制数据库的并发访问?如果在ie中打开一个表单的时候采用select for update。那么这时候用户直接关闭了浏览器,这时候打开的那条记录是不是就被死锁了阿?oracle多久会自动解锁?本人对这些东西都不太了解,可能也说的不太明白。不知道大家明白我的问题没有。诚恳有经验的朋友能指点一二。不胜感激。

解决方案 »

  1.   

    只有在commit或关断以后才会解锁。
      

  2.   

    是不是可以设置系统的inactive回话无效的时间来控制这种情况的发生
      

  3.   

    web方式基本不用考虑数据库的并发访问。因为一般只有一个用户。你所考虑的只是访问量的问题。所以你先确认你的oracle数据库用户数量。
    死锁表的问题我从没有这样做过(select for update),觉得比较危险。相信记录会死锁。只有断开用户,或者重新用相同的用户打开相同的纪录,或者用dba来解锁了。oracle似乎没有自动解锁一说,用户断开就应该释放该用户所占的回滚段,提交或者释放事务,锁定自然就解开了。问题是,你的web页访问量大的话,用户可能会一直处于连接状态。你要想办法避免这种情况。