Hibernate : Session evict

In this tutorial we will discuss about session.evict() method.

Hibernate : Session evict

Hibernate : Session evict

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