HQL(对象查询语言) 和 SQL(结构化查询语言)

1. 查询整个映射对象所有字段
//返回Student对象的集合,可以忽略select
//from + 类对象名
	List students = session.createQuery("from Student").list();
	for (Iterator iter=students.iterator(); iter.hasNext();) {
	    Student student = (Student)iter.next();
		System.out.println(student.getName());
	}


2. 查询其中几个字段
//返回结果集属性列表,元素类型和实体类中相应的属性类型一致,属性名为对象类中的属性变量
		List students = session.createQuery("select name from Student").list();
		for (Iterator iter=students.iterator(); iter.hasNext();) {
			String name = (String)iter.next();
			System.out.println(name);
		}

3. 条件查询
//条件查询,参数索引值从0开始,索引位置。通过setString,setParameter设置参数   
        String hql = "from Users where name=? and passwd=?";   
        Query query = session.createQuery(hql);   
        //第1种方式   
//      query.setString(0, "name1");   
//      query.setString(1, "password1");   
        //第2种方式   
        query.setParameter(0, "name1",Hibernate.STRING);   
        query.setParameter(1, "password1",Hibernate.STRING);   
        List<Users> list = query.list();   
        for(Users users : list){   
            System.out.println(users.getId());   
        }   


//条件查询,参数索引值从0开始,索引位置。通过setString,setParameter设置参数   
        String hql = "from Users where name=? and passwd=?";   
        Query query = session.createQuery(hql);   
        //第1种方式   
//      query.setString(0, "name1");   
//      query.setString(1, "password1");   
        //第2种方式   
        query.setParameter(0, "name1",Hibernate.STRING);   
        query.setParameter(1, "password1",Hibernate.STRING);   
        List<Users> list = query.list();   
        for(Users users : list){   
            System.out.println(users.getId());   
        }   


//条件查询,参数索引值从0开始,索引位置。通过setString,setParameter设置参数   
        String hql = "from Users where name=? and passwd=?";   
        Query query = session.createQuery(hql);   
        //第1种方式   
//      query.setString(0, "name1");   
//      query.setString(1, "password1");   
        //第2种方式   
        query.setParameter(0, "name1",Hibernate.STRING);   
        query.setParameter(1, "password1",Hibernate.STRING);   
        List<Users> list = query.list();   
        for(Users users : list){   
            System.out.println(users.getId());   
        }   

你可能感兴趣的:(java,sql,Hibernate)