Я новичок в Java и использую hibernate.java - hibernate save и read from DB
Я добавил в мой код: экземпляры точек данных
Datapoint dp = new Datapoint();
dp.setDataset(dataset);
dp.setStation(station);
я запустить функцию dataset.getDatapointCount(), который должен подсчитывать дп с набором данных ID:
public int getDatapointCount()
{
Criteria crit = Database.getSession().createCriteria(Datapoint.class);
crit = crit.add(Restrictions.eq("dataset", this));
crit.setProjection(Projections.rowCount());
Integer result = (Integer)crit.uniqueResult();
return result.intValue();
}
и я получил 0 точек данных. (когда запуск завершен, я вижу новые данные в базе данных).
Я добавил
Database.getSession().flush();
перед getDatapointCount функции() и действительно возвращает новый номер (1000 например)
, но в конце подножки с точками данных Didnt сохраняется в базе данных!
Кроме того, если я пишу getDatapointCount() после filush() дважды, я получил в первом
время правильный ответ (1000) и во второй раз не правильный ответ (0)
Может кто-нибудь мне помочь?
Заранее спасибо.