In this section we will introduce concept of Hibernate In Clause.
Hibernate In Clause :
The IN clause allows user to specify multiple values in a WHERE clause. You can use IN clause with your collection.
Suppose you want to choose student record in some collection of names So you can use IN clause here.
Example : This example satisfied your required condition as mentioned above. We are searching record of such students whose details are in the given collection name.
package net.roseindia.main;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import net.roseindia.table.Student;
import net.roseindia.util.HibernateUtil;
import org.hibernate.Criteria;
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 hql = "SELECT stud.roll, stud.name, stud.course FROM Student stud WHERE stud.name IN(:name)";
Query query = session.createQuery(hql);
query.setParameterList("name", new String[] { "Ron", "Som", "Roxi"});
query.setResultTransformer(Criteria.ALIAS_TO_ENTITY_MAP);
List objectList = query.list();
Iterator iterator = objectList.iterator();
System.out.println("RollNo.\t Name \t Course");
while (iterator.hasNext()) {
Map map = (Map) iterator.next();
System.out.print(map.get("0"));
System.out.print("\t" + map.get("1"));
System.out.print("\t" + map.get("2"));
System.out.println();
}
session.close(); // session is closed
}
}
Output :
Hibernate: select student0_.roll_no as col_0_0_, student0_.name as col_1_0_, student0_.course as col_2_0_ from student student0_ where student0_.name in (? , ? , ?) RollNo. Name Course 1 Ron java 3 Roxi unix
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 In Clause
Post your Comment