Home Hibernate Hibernate Query setParameter()



Hibernate Query setParameter()
Posted on: July 11, 2012 at 12:00 AM
This section describe use of query.setParameter() in HQL with example.

Hibernate Query setParameter()

This section describe use of query.setParameter() in HQL with example.

Hibernate query.setParameter():

  setParameter() is used for setting value of Named query parameter. It works with Query instance, which you can get by Session.createQuery().
There is many way to setParameter() according to developer need. Here we are mentioning-

setParameter(int arg0,Object arg1):Query query- It takes two arguments,
arg0 - int type, refer parameter in the query string ,
arg1 - holds non null parameter value.

setParameter(String arg0,Object arg1):Query query-It takes two arguments,
arg0 - String type, refer parameter in the query string
arg1 - contains non null parameter value.

setParameter(int arg0,Object arg1,Type arg2):Query query -It takes three arguments,
arg0 - int type, refer parameter in the query string ,
arg1 - holds non null parameter value ,
arg2 - for the hibernate type.

setParameter(String arg0,Object arg1,Type arg2):Query query-It takes two arguments,
arg0 - String type, refer parameter in the query string
arg1 - contains non null parameter value.
arg2 - for the hibernate type.

setParameters(Object[] arg0,Type[] arg1):Query query-It takes two arguments, both is used for binding value and type to the positional parameters.

Example : Student is our table and we are selecting the student name whose roll number is 5.

package net.roseindia.main;

import java.util.Iterator;
import java.util.List;

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

public class MainClass {

public static void main(String[] args) {
Session session = HibernateUtil.getSessionFactory().openSession();

int roll = 5;
try {
Transaction transaction = session.beginTransaction();
String hql = "FROM Student stud WHERE stud.roll=:roll";
Query query = session.createQuery(hql);
query.setParameter("roll", roll);
query.setParameter(roll, args);
List list = query.list();
transaction.commit();
Iterator iterator = list.iterator();
Student student = (Student) iterator.next();
System.out.println(student.getName());

session.flush();
} catch (HibernateException e) {

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

Output:

Hibernate: select student0_.roll_no as roll1_0_, student0_.course as course0_, student0_.name as name0_ from student student0_ where student0_.roll_no=?
Charli

Click here to download complete source code

Related Tags for Hibernate Query setParameter():


More Tutorials from this section

Ask Questions?    Discuss: Hibernate Query setParameter()  

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 

Ask Questions?

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.