how2j.cn

步骤 1 : 表关系图   
步骤 2 : 表   
步骤 3 : 正确的分析表与表之间的关系的方法   
步骤 4 : 表关系   

完整的SSH模仿天猫项目,使用J2SE、前端技术(包含所有前端jsp文件)、J2EE,SSH一整套技术栈, 从无到有涵盖全部133个知识点,571个开发步骤, 充实SSH项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
在这张表关系图上,列出了模仿天猫整站一共需要用到的9张表,以及表之间的关系。接下来,对每张表做介绍,并讲解表与表之间的关系
表关系图
完整的SSH模仿天猫项目,使用J2SE、前端技术(包含所有前端jsp文件)、J2EE,SSH一整套技术栈, 从无到有涵盖全部133个知识点,571个开发步骤, 充实SSH项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
<style> *{ font-size:15px; } table.t2{ border-collapse:collapse; width:100%; } td{ text-align:left; padding-left:10px; background-color:#F5F5DC; } tr.firstline td{ background-color:#F0F8FF; } </style> <table class="t2" border="1" width="99%"> <tr class="firstline"> <td >表名</td> <td >中文含义</td> <td >介绍</td> </tr> <tr> <td >Category</td> <td >分类表 </td> <td >存放分类信息,如女装,平板电视,沙发等 </td> </tr> <tr> <td >Property</td> <td >属性表 </td> <td >存放属性信息,如颜色,重量,品牌,厂商,型号等</td> </tr> <tr> <td >Product</td> <td >产品表 </td> <td >存放产品信息,如LED40EC平板电视机,海尔EC6005热水器</td> </tr> <tr> <td >PropertyValue</td> <td >属性值表 </td> <td >存放属性值信息,如重量是900g,颜色是粉红色</td> </tr> <tr> <td >ProductImage</td> <td >产品图片表 </td> <td >存放产品图片信息,如产品页显示的5个图片</td> </tr> <tr> <td >Review</td> <td >评论表 </td> <td >存放评论信息,如买回来的蜡烛很好用,么么哒 </td> </tr> <tr> <td >User</td> <td >用户表 </td> <td >存放用户信息,如斩手狗,千手小粉红</td> </tr> <tr> <td >Order</td> <td >订单表 </td> <td >存放订单信息,包括邮寄地址,点好号码等信息</td> </tr> <tr> <td >OrderItem</td> <td >订单项表 </td> <td >存放订单项信息,包括购买产品种类,数量等 </td> </tr> </table>


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果
步骤 3 :

正确的分析表与表之间的关系的方法

edit
完整的SSH模仿天猫项目,使用J2SE、前端技术(包含所有前端jsp文件)、J2EE,SSH一整套技术栈, 从无到有涵盖全部133个知识点,571个开发步骤, 充实SSH项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
表与表之间的关系,基本上是3种
一对一
一对多
多对一
那么怎么判断关系到底是什么呢?
以分类和产品为例子,分类表里有多条数据,产品表里也有多条数据,那么他们的关系是多对多吗? 从经验上讲,我们知道这个结果是不正确的。

正确的分析表与表之间的关系的方法是这样:
一个分类对应 多个 产品
一个产品对应 一个 分类

所以分类和产品之间的关系是一对多
正确的分析表与表之间的关系的方法
完整的SSH模仿天猫项目,使用J2SE、前端技术(包含所有前端jsp文件)、J2EE,SSH一整套技术栈, 从无到有涵盖全部133个知识点,571个开发步骤, 充实SSH项目经验,为简历加上一个有吸引力的砝码.
增值内容,点击购买
从最上面的表关系图中可以看到,有关系的表之间,都是一对多关系(反过来就是多对一关系),并没有一对一关系,和多对多关系。

所以本表列出了所有的一对多关系

注:产品和用户之间其实是多对多关系,即一个用户可以购买多种产品,一种产品可以被多个用户购买。 但是他们的多对多关系是间接的建立在订单项表(OrderItem)上的。
<style> *{ font-size:15px; } table.t2{ border-collapse:collapse; width:350px; } td{ text-align:left; padding-left:10px; background-color:#F5F5DC; } tr.firstline td{ background-color:#F0F8FF; } </style> <table class="t2" border="1" width="99%"> <tr class="firstline"> <td width="41%" >一</td> <td >多</td> </tr> <tr> <td >Category-分类</td> <td >Product-产品</td> </tr> <tr> <td >Category-分类</td> <td >Property-属性</td> </tr> <tr> <td >Property-属性</td> <td >PropertyValue-属性值</td> </tr> <tr> <td >Product-产品</td> <td >PropertyValue-属性值</td> </tr> <tr> <td >Product-产品</td> <td >ProductImage-产品图片</td> </tr> <tr> <td >Product-产品</td> <td >Review-评价</td> </tr> <tr> <td >User-用户</td> <td >Order-订单</td> </tr> <tr> <td >Product-产品</td> <td >OrderItem-订单项 </td> </tr> <tr> <td >User-用户</td> <td >OrderItem-订单项</td> </tr> <tr> <td >Order-订单</td> <td >OrderItem-订单项</td> </tr> <tr> <td >User-用户</td> <td >User-评价</td> </tr> </table>


源代码
1. 双击选中单词 2. 三击选中整行 3. CTRL+F 查找 4. F8 全屏编辑,再次点击恢复
渲染中 渲染完成
效果


HOW2J公众号,关注后实时获知最新的教程和优惠活动,谢谢。


问答区域    
2020-06-24 分类,属性,属性值和产品的关系
aasdasd

一个 分类 对应多个 属性 如 分类 超级电脑 下有 属性 品牌,显卡,cpu,分辨率,,,等等 一个 属性 对应多个 属性值 如 属性 分辨率 下有 属性值 3840*2160,2560×1440,1920*1080,,,等等 多个 属性值 对应一个 产品 如 属性值 3840x2160,windows,2*rtx3080ti,i99 7999k,,,等等 对应一个 产品 超级玩家主机 一个 属性值 对应 一个产品和属性 这样每个不同的产品都能拿到属于自己不同的属性表 但是我感觉可以直接把 属性 和 产品 建立关联 不与 分类 做关联 这样都是一样的效果 而且还容易理解多了




1 个答案

how2j
答案时间:2020-06-24
你说得对,和产品关联更好。 只是属性表的维护量会大很多,大非常多。



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到




2020-06-03 教程进度归0了
fate520

我在公司看完了整个ssm的教程,回家之后想跟着教程练习,发现我的教程进度变为0了。这算是bug吧。




1 个答案

fate520
答案时间:2020-06-03
好吧,我看的是ssm,但是不小心点进ssh了 =_=



回答已经提交成功,正在审核。 请于 我的回答 处查看回答记录,谢谢
答案 或者 代码至少填写一项, 如果是自己有问题,请重新提问,否则站长有可能看不到




2018-09-03 弱弱问一下站长表关系图使用什么画的?
2018-04-22 没有店铺信息吗?
2018-04-14 关于分类的属性和属性值的问题


提问太多,页面渲染太慢,为了加快渲染速度,本页最多只显示几条提问。还有 6 条以前的提问,请 点击查看

提问之前请登陆
提问已经提交成功,正在审核。 请于 我的提问 处查看提问记录,谢谢
关于 实践项目-天猫整站SSH-表与表关系 的提问

尽量提供截图代码异常信息,有助于分析和解决问题。 也可进本站QQ群交流: 635924385
提问尽量提供完整的代码,环境描述,越是有利于问题的重现,您的问题越能更快得到解答。
对教程中代码有疑问,请提供是哪个步骤,哪一行有疑问,这样便于快速定位问题,提高问题得到解答的速度
在已经存在的几千个提问里,有相当大的比例,是因为使用了和站长不同版本的开发环境导致的,比如 jdk, eclpise, idea, mysql,tomcat 等等软件的版本不一致。
请使用和站长一样的版本,可以节约自己大量的学习时间。 站长把教学中用的软件版本整理了,都统一放在了这里, 方便大家下载: https://how2j.cn/k/helloworld/helloworld-version/1718.html

上传截图