对于我们学习的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();
- }
- }
- }
- }
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对w3xue的支持。如果你想了解更多相关内容请查看下面相关链接