我怎么知道Hibernate是否在运行后进行getHibernateTemplate().saveOrUpdate(object);了插入或更新,该方法无效!
saveOrUpdate()执行以下操作:
- 如果对象在此会话中已经存在,则不执行任何操作
- 如果与该会话关联的另一个对象具有相同的标识符,则引发异常
- 如果对象没有标识符属性,请保存()
- 如果对象的标识符具有分配给新实例化的对象的值,则将其保存()
- 如果对象由或进行版本控制,并且版本属性值与分配给新实例化的对象的值相同,则将其保存()
- 否则update()对象
恐怕在运行此方法之前,我始终必须检查对象是否已经具有“主键/ ID”,这是唯一的方法吗?如果是,如何以通用方式获取主键/ ID?
Serializable id = session.getIdentifier(entity);或Object id = entityManagerFactory.getPersistenceUnitUtil().getIdentifier(entity);??
hibernate ×1