私はJavaが初めてで、休止状態を使用しています。
コードのデータポイント インスタンスに追加しました。
Datapoint dp = new Datapoint();
dp.setDataset(dataset);
dp.setStation(station);
データセット ID で dp をカウントする必要がある dataset.getDatapointCount() 関数を実行します。
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) を返します。
しかし、実行の最後に、データポイントはデータベースに保存されませんでした!
さらに、filush() の後に getDatapointCount() を 2 回記述すると、最初に取得できます。
2 回目は正解 (1000)、2 回目は正解なし (0)
誰かが私を助けることができますか?
前もって感謝します。