Posted on 2011-12-03 00:05
陳小東 閱讀(688)
評論(0) 編輯 收藏
實體查詢
例子1:
- String hql=”from User user ”;
- List list=session.CreateQuery(hql).list();
String hql=”from User user ”;
List list=session.CreateQuery(hql).list();
因為HQL語句與標準SQL語句相似,所以我們也可以在HQL語句中使用where字句,并且可以在where字句中使用各種表達式,比較操作符以及使用“and”,”or”連接不同的查詢條件的組合。看下面的一些簡單的例子:
- from User user where user.age=20;
from User user where user.age=20;
例子2(返回一個屬性):
- String hql= "select c.customerNamefrom Customer c“;
- Query query= session.createQuery(hql);
- Iteratorit = query.list().iterator();
- System.out.println(query.list().size());
- while(it.hasNext()) {
- String c = (String)it.next();
- System.out.println(c);
- }
String hql= "select c.customerNamefrom Customer c“;
Query query= session.createQuery(hql);
Iteratorit = query.list().iterator();
System.out.println(query.list().size());
while(it.hasNext()) {
String c = (String)it.next();
System.out.println(c);
}
例子3(返回多個屬性):
如果返回多個屬性,那么它們將被裝入數組或者集合中
- String hql= "select c.customerId, c.customerName“+
- “from Customer c“;
- Query query= session.createQuery(hql);
- Iteratorit = query.list().iterator();
- while(it.hasNext()) {
- Object[] obj= (Object[])it.next(); // List list= (List)it.next();
- Long id = (Long)obj[0]; //Long id = (Long)list.get(0);
- String name = (String)obj[1]; //String name = (String)list.get(1);
- System.out.println(id.longValue() + " " + name);
- }