您的位置:首页 > 其它

Hibernate的学习之路二十八(唯一OID和对象导航的查询的方式)

2017-12-04 12:08 295 查看

前言

这篇文章主要讲了,一些查询的方法。以及开发中比较常见的


分析

技术分析之Hibernate框架的查询方式
1. 唯一标识OID的检索方式
* session.get(对象.class,OID)
2. 对象的导航的方式

3. HQL的检索方式
* Hibernate Query Language  -- Hibernate的查询语言

4. QBC的检索方式
* Query By Criteria -- 条件查询

5. SQL检索方式(了解)
* 本地的SQL检索

其中第一种的检索方式,也事比较常见的,是通过主键ID来查询的,用session对象,适用get方法,参数就是对象的映射,和ID值,就可以查出这个表的数据。

/**
* 查询联系人,属于某一个客户
*/
@Test
public void run2(){
// 先查询1号客户
Session session = HibernateUtils.getCurrentSession();
Transaction tr = session.beginTransaction();
Linkman man = session.get(Linkman.class,5L);
System.out.println("=============");
System.out.println(man.getCustomer().getCust_name());
tr.commit();
}

其中第二种的检索方式,也是常见的,在一对多的时候,比如A的JavaBean中含有B的对象,那么当我们需要查询B的时候,就可以用A的get方法,获得B的对象,从而得到B的数据。

/**
* 对象导航的方式
*/
@Test
public void run1(){
// 先查询1号客户
Session session = HibernateUtils.getCurrentSession();
Transaction tr = session.beginTransaction();
// 先是有OID的方式查询客户
Customer c = session.get(Customer.class,1L);
System.out.println("=====================");
// 查看该客户下的联系人的集合
System.out.println(c.getLinkmans().size());
tr.commit();
}
<
4000
br />
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐