Java大型互联网项目-移动电子商城-数据库模型
表和表的关系有四种:
一对多
多对一
一对一
多对多
以下内容请将我提供的数据库脚本在自己的数据库中运行,参照数据库中的数据进行对照学习
一对多
一对多的关系
从一的一端向多的一端去看
如:订单表和订单明细表是一对多的关系
箭头指向的一端永远是一的一端,箭头背向的表多数情况下是多的一端(除了一对一)
这两张表在java实体类中如何体现:
在一的一端的类中有一个集合属性,这个集合属性的泛型就是多的一端的表所对应的java类
多对一
从多的一端向一的一端去看
如:订单明细表和订单表是多对一的关系
箭头指向的一端永远是一的一端,箭头背向的表多数情况下是多的一端(除了一对一)
这两张表在java实体类中如何体现:
多的一端的java实体类中有一个一的一端的java实体类的对象属性
一对一
从两端去看
如:人员表和身份证表
箭头指向的一端永远是一的一端,箭头背向的表多数情况下是多的一端,但是如果多的一端的表的外键同时作为它的主键的话那么这两张表就是一对一的关系
这两张表在java实体类中如何体现:
无论从那一端的java实体类来看,java实体类中都有对方的表所对应的java实体类对象的属性
多对多的关系
从两端去看
如:用户表和角色表,由中间表来体现出来多对多的关系,箭头的方向是由中间表指向两端
注意:中间表中有且仅有两张表的主键作为外键
这两张表在java实体类中如何体现:
两端表所对应的java实体类中分别有对方表对应的java实体类的集合属性
本次项目我们重点关注的表
类别表
商品表
EB_ITEM
要掌握的关系:
和品牌表是一对多的关系
和类别表也是一对多的关系
要掌握的字段:基本字段都要掌握,重要掌握audit_status, show_status
商品大字段表
商品大字段表
EB_ITEM_CLOB
要掌握的关系:
和商品表是一对一的关系
箭头背向的表拿箭头指向的表的主键作为外键和主键
要掌握的字段:item_desc 使用富文本编辑器来编辑
属性表
EB_FEATURE
管理商城中所有的属性
关系:和类别表的关系,一个类别对应多种属性
字段:feature_name:属性名称
is_spec: 是否是特殊属性,如果是值1, 能影响价钱和库存
is_select: 是否可以作为筛选条件在portal展示
select_values: 当前属性的可选值有哪些,每一个属性值用逗号来分割,这些属性值是可以管理起来的,在添加商品的时候从属性中来选择属性值
input_type: 在添加商品的时候,属性在页面展示方式
如
操作系统
- IOS
- Android
商品的属性值的表
EB_PARA_VALUE
和商品表是一对多的关系:一个商品对应着多个商品属性的值
和属性表的关系:多对一,一个商品属性的值的数据可以在属性表中找到唯一一个对应的属性
item_id: 商品表的主键
feature_id: 属性表的主键
para_value: 所选属性的值
最小销售单元
最小销售单元由特殊的属性来组合出来,最重要的是最小销售单元上的价钱和库存单独来管理
关系:和商品表是一对多的关系,一个商品有多个最小销售单元