1. 程式人生 > >hibernate關於多對多映射和多對一的hql查詢

hibernate關於多對多映射和多對一的hql查詢

nfa nat alt sso true chan select csdn exc

public void queryCustomerbymerchantId(){  
        SessionFactory sf = HibernateUtil.getSessionFactory();  
        Session session = sf.getCurrentSession();  
        Transaction ts = session.beginTransaction();  
        try {  
       Query query=session.createQuery("select c from Customer c join c.merchant m where m.mid=1");  
       List customer = query.list();  
       for(int i=0;i<customer.size();i++)  
       {  
        Customer customers =(Customer)customer.get(i);  
            System.out.println(i+"--"+customers);  
       }  
  
        ts.commit();      
          
    } catch (HibernateException e) {  
        // TODO Auto-generated catch block  
        if(ts != null)  
        {  
            ts.rollback();  
        }  
        e.printStackTrace();  
    }  
}  

  技術分享圖片

public void queryCustomerbyOrderId(){  
        SessionFactory sf = HibernateUtil.getSessionFactory();  
        Session session = sf.getCurrentSession();  
        Transaction ts = session.beginTransaction();  
//      int n;  
//      Scanner sc=new Scanner(System.in);  
//      n=sc.nextInt();  
        try {  
       Query query=session.createQuery("select customer from Order o where  o.id=1" );  
       System.out.println(query);  
       List customer = query.list();     
       for(int i=0;i<customer.size();i++)  
       {  
        Customer customers =(Customer)customer.get(i);  
            System.out.println(i+"--"+customers);  
       }  
  
        ts.commit();      
          
    } catch (HibernateException e) {  
        // TODO Auto-generated catch block  
        if(ts != null)  
        {  
            ts.rollback();  
        }  
        e.printStackTrace();  
    }  
}  

  技術分享圖片

hibernate關於多對多映射和多對一的hql查詢