我遇到了一个奇怪的情况,休眠删除适用于所有记录,但不适用于 id= 1
。起初,我getCurrentSession
用于检索活动的休眠会话,但将其更改为手动打开/关闭新会话以进行删除,因为它不起作用。但现在它仍然不起作用。尽管如此,我正在使用交易。
@Override
public void delete(Song song) {
session = sessionFactory.openSession();
try {
Transaction tx = session.beginTransaction();
session.delete(song);
tx.commit();
} catch (HibernateException e) {
System.out.println("notify!");
}
session.close();
}
我有5个测试记录。我可以删除 id={2,3,4,5},但我不能删除 id=1。有任何想法吗?
编辑:这是我的 Song 实体的代码。