我想从会话中分离对象,所以我编写了这样的代码..但它不是从会话中分离而是保存到数据库。如果evict()
和clear()
方法有效,任何人都可以回答吗?
session.evict(student);
session.save(student);
答案 0 :(得分:1)
我认为您应该拨打session.save(student);
然后session.evict(student);
或session.clear();
,因为它没有意义,反之亦然。
回答原始问题session.evict(student);
会从会话中删除该对象,而session.clear();
将完全清除会话。
clear()完全清除会话。
evict(对象对象) 从会话缓存中删除此实例。
您可以参考https://docs.jboss.org/hibernate/orm/3.5/api/org/hibernate/Session.html的官方文档。 希望有所帮助