java-hibernate从数据库保存和读取
我是Java新手,使用hibernate 我在代码中添加了数据点实例:java-hibernate从数据库保存和读取,java,hibernate,Java,Hibernate,我是Java新手,使用hibernate 我在代码中添加了数据点实例: Datapoint dp = new Datapoint(); dp.setDataset(dataset); dp.setStation(station); 我运行dataset.getDatapointCount函数,该函数必须使用数据集id对dp进行计数: public int getDatapointCount() { Criteria crit = Database.get
Datapoint dp = new Datapoint();
dp.setDataset(dataset);
dp.setStation(station);
我运行dataset.getDatapointCount函数,该函数必须使用数据集id对dp进行计数:
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,那么我就进入了第一个
计时正确答案1000,第二次没有正确答案0
有人能帮我吗
提前感谢。您使用的FlushMode有什么价值
未提交的事务可能是您的数据未保存到数据库中的原因
看