HQL 语句---简单属性查询

HQL 语句---简单属性查询
1.
/**
单一属性查询
*/
List s = session.createQuery("select name from Student").list();
//返回的类型与实体类中相应的属性类别一直.

2.
/**
多个属性查询
*/
List s = session.createQuery("select id, name from Student").list();
//查询多个属性,返回值为对象的数组
//数组元素类型和对应的实体类型一直
//数组长度与查询的条件相同

3./**
返回student实体类,
还要在实体类中提供空的构造函数,和带参数的构造函数
*/
List s = session.createQuery("select new Student(id, name) from Student").list();
//返回的便是实体类

4.
可以实用别名,用as

5.
/*
list()与iterate()方法的区别.
*/
iterate()迭代中会发生N+1的现象,它与session的绑定.当session在缓存中存在时用iterate()会提高一定的效率.没有在发生N+1现象
list()只会向数据库查询的SQL,除非配置查询缓存.

你可能感兴趣的:(HQL 语句---简单属性查询)