你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:技术专栏 / 数据库开发
hibernate学习list与iterator区别,一对多双向关联配置
 
1.对于Query接口的list()方法与iterator()方法来说,都可以实现获取查询的对象,但是list()方法返回的每个对象都是完整的(对象中的每个属性都被表中的字段填充上了),而iterator()方法所返回的对象中仅包含主键值(标示符),只有当对iterator()中的对象进行操作时,hibernate才会向数据库再次发送sql语句来获取该对象的属性值。
 
 
 
2.一对多双向关联配置。customer与order一对多的关系
 
[java]  
public class Customer {  
    private Long id;  
    private String name;  
    private Set<Order> orders;//一对多,通过该变量可以引用到对应Order集合对象  
。。。get/set方法省略  
}  
 
 
 
[java]  
public class Order {  
    private Long id;  
    private String orderNumber;  
    private Customer customer;//多对一,通过该变量可以引用到关联的customer对象  
。。。get/set方法省略  
}  
 
Customer.hbm.xml
 
[html]  
 <hibernate-mapping>  
    <class name="com.bsi.hibernate.Customer" table="tb_customer">  
        <id name="id" column="id" type="long">  
            <generator class="increment"></generator>  
        </id>  
        <property name="name" length="50" type="string" column="name"></property>  
<set name="orders" cascade="save-update" inverse="true">  
    <key column="customer_id"></key>  
    <one-to-many class="com.bsi.hibernate.Order"/>  
</set>  
    </class>  
 </hibernate-mapping>  
 
Order.hbm.xml
 
[html] 
<hibernate-mapping>  
     <class name="com.bsi.hibernate.Order" table="tb_order">  
      <id name="id" column="id" type="long">  
       <generator class="increment"></generator>  
      </id>  
      <property name="orderNumber" column="orderNumber" type="string"></property>  
      <many-to-one name="customer" class="com.bsi.hibernate.Customer" column="customer_id"></many-to-one>  
     </class>  
    </hibernate-mapping>  
  推荐精品文章

·2024年12月目录 
·2024年11月目录 
·2024年10月目录 
·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089