我有一个java web应用程序从oracle数据库中提取数据,有一天我使用oracle sql developer修改了一些数据行。
现在问题是Java一直在返回旧数据,好像它从未改变过,但如果我在sql developer中运行完全相同的查询,它将返回当前(修改过的)数据。
我没有启用任何缓存,我使用OracleDataSource.getImplicitCachingEnabled()和OracleDataSource.getExplicitCachingEnabled()进行了检查,两者都是假的。
是否有某种内置于Oracle本身的缓存需要清除?我已经绞尽脑汁待了2天。
我尝试启动/停止和取消部署/重新部署应用程序而不做任何更改。我甚至试过重启tomcat本身,但没有帮助。有什么建议吗?
答案 0 :(得分:5)
您很可能在SQLDeveloper中没有autocommit
,因此数据尚未提交,并且在SQLDeveloper会话之外不可见。