之前重新加載HSQLDB文件我有以下情形:使用相同in file hsqldb
力冬眠閱讀
app1
- 兩個應用程序只寫從
db
到/刪除和app2
只讀取它 app1
信號(通過發送事件)app2
當db
已更新時,他應該讀取新值app2
是不能夠讀出新的價值,他只看到老一
我試圖寫:
Session session = sessionFactory.getCurrentSession();
try {
session.setFlushMode(FlushMode.AUTO);
session.saveOrUpdate(cluster);
session.flush();
return true;
} catch (Exception e) {
LOG.error("Failed saving cluster {}!", cluster.getName(), e);
return false;
}
的閱讀:
Session session = sessionFactory.getCurrentSession();
session.setCacheMode(CacheMode.REFRESH);
try {
return (List<Cluster>) session
.createCriteria(Cluster.class)
.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY)
.list();
} catch (Exception e) {
LOG.error("Error while trying to read the clusters from file!", e);
return new ArrayList<>();
}
但遺憾的是這並未」工作。
我也嘗試關閉連接,然後重新打開,但這也不起作用。
更新[1]:
我只設置:
basicDataSource.setDefaultTransactionIsolation(Isolation.READ_UNCOMMITTED.value())
上的app2
的一面,但即便如此,app2
是不能夠讀出的更新。
在HSQLDB使用何種表類型連接? – Evgeny
@Evgeny你是什麼意思的表類型?表格的組成? – Paul
http://hsqldb.org/doc/guide/ch01.html#N1023C – Evgeny