标签:
Query接口,采用方法链,即它的方法会返回Query对象
1."from User where name=‘张_‘"
—_表示单个字符
2.from User where name=‘%刘%‘
—-%表示任意字符
3.from User u where u.books is not empty
—表示集合为空,在sql中相当于exists
4.member of
—表示元素属于集合,相当于sql中的in
package com.HQL;
import java.util.List;
import java.util.Map;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.hibernate.service.ServiceRegistry;
import org.hibernate.service.ServiceRegistryBuilder;
import org.hibernate.tool.hbm2ddl.SchemaExport;
import org.junit.Test;
import com.Entity.User;
import com.OTMEach.ClassRoom;
import com.OTMEach.Student;
public class HQL {
private static Configuration cfg = null;
private static SessionFactory sessionFactory = null;
private static ServiceRegistry serviceRegistry = null;
@Test
public void test() {
cfg = new Configuration().configure();
serviceRegistry = new ServiceRegistryBuilder().applySettings(
cfg.getProperties()).buildServiceRegistry();
sessionFactory = cfg.buildSessionFactory(serviceRegistry);
/*
* SchemaExport schemaExport = new SchemaExport(cfg);
* schemaExport.create(true, true);
*/
Session session = sessionFactory.getCurrentSession();
Transaction transaction = session.beginTransaction();
1. /* String sql = "from User";
List<User> users =session.createQuery(sql).list();
System.out.println(users);*/
2./*String sql = "select u.id,u.name,u.phone from User u";
List<Object[]> list = session.createQuery(sql).list();
for (Object[] objs : list) {
System.out.println("id" + objs[0]);
System.out.println("name" + objs[1]);
System.out.println("phone" + objs[2]);
}*/
3./*String sql = "select u.id from User u";
List<Object> list = session.createQuery(sql).list();
for (Object obj : list) {
System.out.println("id" + obj);
}*/
4./*String sql = "select new List(u.id,u.name) from User u";
List<List> lists = session.createQuery(sql).list();
for (List list : lists) {
System.out.println("id" + list.get(0));
System.out.println("name" + list.get(1));
}*/
5./* String sql = "select new map(u.id as id,u.name as name) from User u";
List<Map> lists = session.createQuery(sql).list();
for (Map map : lists) {
System.out.println("id" + map.get("id"));
System.out.println("name" + map.get("name"));
}*/
6./*String sql = "from User u where name=:name";
User user = (User) session.createQuery(sql).setString("name","张三").uniqueResult();
System.out.println(user);*/
transaction.commit();
}
}
标签:
原文地址:http://blog.csdn.net/qq_22661895/article/details/51365254