Hibernate的其他几种检索方式:

来源:互联网 发布:linux批量删除命令 编辑:程序博客网 时间:2024/05/19 13:09
Hibernate的其他几种检索方式:
1.HQL检索方式:Hibernate Query Language,采用面向对象的方式来替代标准SQL
SQL:select * from users u where u.userid= 1;
在SQL语句中定位的都是表名或者是字段名,


HQL: from Users u where u.userId = 1;
在HQL语句中定位的都是类名或者属性名。
在HQL语句中绑定参数的方式:
1,通过标示符方式绑定: :suibian
query.setString("suibina",name);

2,通过位置绑定:?
query.setString(0,name);
注意:HQL语句中是以面向对象方式来实现的。在面向对象中查数从0开始。

注意:如果在HQL语句中做投影操作那么hibernate不会在为我们返回这个对象了。而是用Object[]来存放查询出的结果。如果在投影后还非要那个对象,我们可以在HQL语句中添加个new Users(u.id,u.username)来让hibernate创建User对象,但是。Users类中一定要有对应的构造方法。