Home Hibernate Hibernate Update
Questions:Ask|Latest

 
 

Share on Google+Share on Google+

Hibernate Update

Advertisement
In this section we will discuss various method of update.

Hibernate Update

In this section we will discuss various method of update.

Hibernate Update:

Hibernate provides minimal object oriented HQL as well as highly object oriented criteria concept. Hibernate also provide native SQL query.

The work of UPDATE clause is to update existing record of the table by updating one or more properties of your persistent object. Here we going to discuss various methods of update.

session.update()-this method  update the existing record.

Example : In this example we are updating the student name whose roll number is 3 .

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 HibernateUpdate {
public static void main(String args[]) {
Session session = HibernateUtil.getSessionFactory().openSession();
Transaction transaction = session.beginTransaction();
int roll = 3;
Student student = (Student) session.load(Student.class, roll);
try {
student.setName("Johny");
session.update(student);
transaction.commit();
System.out.println("Update Successfully");
session.close();
} catch (HibernateException e) {
e.printStackTrace();
}
}
}

session.saveorupdate()- It saves the record if primary key does not exist otherwise it update the record.

session.saveOrUpdate(student);

session.merge() - It is bit complex. It works with the persistent object. It checks for the persistent instance existence.
If present copy the state of the given object onto the persistent instance. If not it load it from database or create new one.
The persistent instance returned which remain detached. It does not associated with session.

session.merge(student);

query.executeUpdate() - It execute your update query or delete the statement and also return the number of entities updated or deleted.

Example:

package net.roseindia.main;

import net.roseindia.util.HibernateUtil;
import org.hibernate.HibernateException;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

public class MainClazz {

public static void main(String[] args) {
Session session = HibernateUtil.getSessionFactory().openSession();
String newName = "Ron";
String oldName = "Rohnald";
try {
Transaction transaction = session.beginTransaction();
String hql = "UPDATE Student stud SET stud.name='" + newName
+ "' WHERE stud.name='" + oldName + "'";
Query query = session.createQuery(hql);
int rowCount = query.executeUpdate();
transaction.commit();
System.out.println("Rows affected: " + rowCount);
session.flush();
} catch (HibernateException e) {

e.printStackTrace();
} finally {
session.close();
}
}
}

Click here to download complete source code

Advertisements

If you enjoyed this post then why not add us on Google+? Add us to your Circles



Liked it!  Share this Tutorial


Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Posted on: July 13, 2012

Related Tutorials

Ask Questions?    Discuss: Hibernate Update  

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 
Comments
DMCA.com