参考:Hibernate Session的saveOrUpdate()方法
Hibernate Basics - 3 ways to delete an entity from the datastore
以下方法并不起效:
private boolean deleteById(Class<?> type, Serializable id) {
Object persistentInstance = session.load(type, id);
if (persistentInstance != null) {
session.delete(persistentInstance);
return true;
}
return false;
}
因为load后的entity总不为空,load方法总是假定其存在(见 load和get ),如果是想可以区分出该id是否存在,应该将load改成get。