In this tutorial we will discuss about session.evict() method.
Hibernate session.evict() :
The function of evict() method is used to remove instance from the session
cache. So for first time saving the object ,save object by calling
session.save(object) method
before evicting the object from the cache. In the same way update object by
calling session.saveOrUpdate(object)
or session.update(object) before calling evict().This operation cascades to
associated instances if the association is mapped with cascade="evict".
Example :
In this example we used evict() method.
package net.roseindia.main;
import net.roseindia.table.Student;
import net.roseindia.util.HibernateUtil;
import org.hibernate.HibernateException;
import org.hibernate.Session;
import org.hibernate.Transaction;
public class HibernateSessionEvict {
public static void main(String args[]) {
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = session.beginTransaction();
int roll = 5;
Student student = (Student) session.load(Student.class, roll);
try {
student.setName("Johny");
student.setCourse("Hibernate");
session.saveOrUpdate(student);
transaction.commit();
session.evict(student);
System.out.println("Update Successfully");
session.close();
} catch (HibernateException e) {
e.printStackTrace();
}
}
}
Output :
Hibernate: select student0_.roll_no as roll1_0_0_, student0_.course as course0_0_, student0_.name as name0_0_ from student student0_ where student0_.roll_no=? Update Successfully
Click here to download complete source code
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.
Ask Questions? Discuss: Hibernate : Session evict
Post your Comment