当前位置: 移动技术网 > IT编程>开发语言>Java > Hibernate中使用HQLQuery查询全部数据和部分数据的方法实例

Hibernate中使用HQLQuery查询全部数据和部分数据的方法实例

2019年07月19日  | 移动技术网IT编程  | 我要评论

对于我们学习的hql,我大概理解为就是一种查询的语言,它没有增加、删除、修改的作用,而对我们用来查询的操作,感觉用起来就是很简便,代码很少,很好理解一些。

下面是查询操作的简单实例

package com.lc.view;
import java.util.iterator;
import java.util.list;
import org.hibernate.session;
import org.hibernate.transaction;
import com.lc.domain.student;
import com.lc.utils.hibernateutil;
public class selectstudent {
 public static void main(string[] args) {
 selectsomestudents();
 }
 /**
 * 1.检索所有的学生
 **/
 public static void selectallstudents(){
 session session = null;
 transaction ts = null;
 try {
 session = hibernateutil.getcurrentsession();
 ts = session.begintransaction();
 list<student> list = session.createquery("from student").list();
 //取出数据1.for循环增强
 for(student stu:list){
 system.out.println(stu.getsid()+" "+ stu.getsname()+" "+stu.getsdept());
 }
 //取出数据2.迭代器
 system.out.println("------------------------------");
 iterator iterator = list.iterator();
 while(iterator.hasnext()){
 student s = (student) iterator.next();
 system.out.println(s.getsid()+" "+ s.getsname()+" "+s.getsdept());
 }
 ts.commit();
 } catch (exception e) {
 if (ts != null) {
 ts.rollback();
 }
 throw new runtimeexception(e.getmessage());
 } finally {
 if (session != null && session.isopen()) {
 session.close();
 }
 }
 }
 /**
 * 2.检索部分的学生
 **/
 public static void selectsomestudents(){
 session session = null;
 transaction ts = null;
 try {
 session = hibernateutil.getcurrentsession();
 ts = session.begintransaction();
 /**
 *不可以这样去除数据了 因为只有student对象的两个属性值 不是一个对象 
 list<student> list = session.createquery("select sname,sdept from student").list();
 for(student stu:list){
 system.out.println(stu.getsname()+" "+stu.getsdept());
 }**/
 list list = session.createquery("select sname,sdept from student").list();
 for(int i=0;i<list.size();i++){
 object[] obj = (object[]) list.get(i);
 system.out.println(obj[0].tostring()+" "+obj[1].tostring());
 }
 ts.commit();
 } catch (exception e) {
 if (ts != null) {
 ts.rollback();
 }
 throw new runtimeexception(e.getmessage());
 } finally {
 if (session != null && session.isopen()) {
 session.close();
 }
 }
 }
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对移动技术网的支持。如果你想了解更多相关内容请查看下面相关链接

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网