hibernate中多表设计

来源:互联网 发布:linux打开exe文件类型 编辑:程序博客网 时间:2024/06/02 02:31

配置实体之间的关联关系

在实际开发中,数据库的表难免会有相互的关联关系,在操作表的时候就有可能会涉及到多张表的操作.例如,商品和分类,用户和订单,订单和商品

要想实现多表映射,

第一步:要先确定两张表之间的关系,如果关系确定错了,后面做的所有操作就都可能不正确.

第二步:在数据库中视线两张表的关系.

第三步:在实体类中描述出两个实体的关系,

第四步:配置出实体类的数据和数据库表的关系映射


表和表之间的关系可分为:多对多,一对多,一对多.


表关系确立: 在一对多关系中 我们习惯把一的一方称为主表,把多的一方称为从表,在数据库中建立一对多的关系,需要使用数据库的外键约束,

外键: 指的是从表中有一列,取值参照主表的主键,这一列就是外键.



关系映射:

一对多关系映射:涉及的标签, set用于映射set集合属性.

                属性:name: 指定集合属性的名称.

                        table: 在一对多的时候写不写都可以  ,它指定的是集合元素所对应的表.

                       one-to-many: 用于指定当前映射配置文件所对应的实体 和集合元素所对应实体是一对多关系

                        class: 指定集合元素所对应的实体类名称  

                       key:用于映射外键字段的

                       column:指定从表中的外键字段的名称


多对多关系的映射:涉及的标签:    set  用于映射集合的属性

                        属性: name : 指定集合属性的名称

                                 table:   指定的是中间表的名称  在多对多中  必须写

                                 key   :   指定外键字段


                          属性  column : 指定的是当前映射文件所对应实体在中间表的外键字段名称 

                                  many-to-one : 指定当前映射文件所对应的实体和集合元素所对应的实体是多对多的关系


                          属性 : class: 指定集合元素所对应的实体类

                                   column:指定的是集合元素所对应的实体在中间表的外键字段



对象导航查询

          对象导航检索方式是根据已经加载的对象 导航到他的关联对象 它利用类与类之间的关系来检索对象.

           对象导航查询的使用要求是: 两个对象之间必须存在关联关系


总结查询方式

  1  根据id查询

  2   HQL

  3   QBC

  4   SQL

  5  对象导航

原创粉丝点击