这种项目数据库是很重要的,所以数据库要一开始就设计好。因为是个人练手,所以项目比较简单,只有BBS的基本要素:分类(Category)、话题(Topic)和帖子(Message)等。这里,顶层的帖子是Topic,然后所有的跟帖都是Message类型。下面是具体的表的内容

Category{
id
名字
子Topic(一对多)
}

Category是分类,这个很简单,就是分类的名字,然后底下所包含的Topics。

Topic{
id
内容
父Category(多对一)
子一级Message(一对多)相当于回帖
}

Topic有一个自己从属的Category,还有底下的跟帖以及回复等。

Message{
id
内容
父Topic(多对一)
父Message(多对一)
子Message(一对多)相当于回复帖子的帖子
}

Message比较麻烦,它有自己的所从属的Topic,但是帖子底下还会有跟帖,所以Message里面还会包含下层Message,也会有自己所从属的父Message。

这里的所有关系都是双向关联的,方便以后查询。我打算让Hibernate自己根据类来帮我建表,所以建表语句就不贴了,其实建表语句也很简单。按理来说应该是先建表再根据表来建立实体类,但是我对Hibernate的掌握还不够好,我也怕它会弄出些什么奇奇怪怪的东西,所以就先建立类。其实对于太复杂的东西来说,类和表可能都要自己手动去做,因为对于数据库的细节优化靠Hibernate是不靠谱的。

SSH应用之BBS之路-1、项目构设之数据库设计相关推荐

  1. 天猫整站SSM项目(二)数据库设计

    天猫整站SSM项目(二)数据库设计 一.数据库设计分析 二.创建数据库 1. 建立数据库 2. 表与表之间的关系 2.1 表![在这里插入图片描述](https://img-blog.csdnimg. ...

  2. 第2章搭建CRM项目开发环境(数据库设计)

    2.1CRM数据库设计 2.1.1数据库设计原则 我们可以结合项目原型来考虑数据库设计,市场活动,用户,这些都是需要是持久化的,所以都需要设计成表.表和表之间通常还会有一定的关系.看每一个创建表单上都 ...

  3. 12306的西天取经路 - 春节抢票与PostgreSQL数据库设计思考

    标签 PostgreSQL , 12306 , 春节 , 一票难求 , 门禁广告 , 数组 , 范围类型 , 抢购 , 排他约束 , 大盘分析 , 广告查询 , 火车票 背景 马上春节了,又到了火车票 ...

  4. 夺命雷公狗ThinkPHP项目之----商城6数据库设计和完成后台首页

    废话步多说,我们开工, 数据库设计如下所示: SQL语句如下: #创建数据库 create database shopp charset utf8;#选择数据库 use shopp;/*------- ...

  5. Flask项目(一)前后端分离、项目目录结构、数据库设计、CRF

    Flask项目 认识前后端分离 项目文件目录结构 单一文件中构建所有依赖工具 创建工程目录(对单一文件进行拆分) 日志文件应用 数据库设计 为静态文件添加蓝图 crf防护 认识前后端分离 项目文件目录 ...

  6. SSH应用之BBS之路-2、Hibernate配置

    先申明我使用的数据库是MySql,用的环境是IDEA. Hibernate的配置说起来还是比较简单的,首先是要去下载Hibernate,然后建立Web项目,对于IDEA,详细的Web项目建立就不多说了 ...

  7. JAVAWEB项目--模拟考试系统数据库设计与实现(二)

    模拟考试项目需求参见博文<JAVAWEB项目–模拟考试系统需求(一)> 1.考试系统实体关系图 2.考试系统数据字典设计 3.考试系统创建数据库和表 -- 创建数据库testsystem ...

  8. 阶段项目:学生信息管理系统数据库设计

    目录 问题描述: 一.后台数据库的设计 1)设计数据库 2)插入数据 3)查询数据 4)修改数据 5)管理数据 1.导出数据到各种异构数据源.导出脚本 2.附加和分离数据库 二.前端界面的开发(后期我 ...

  9. 传智播客韩顺平老师2011ssh实战项目校内网的数据库设计32张表全解

    ------------------------------------------- 用户表 users ------------------------------------------- id ...

最新文章

  1. 计算机应用基础网络统考操作,全国网络统考《计算机应用基础》完整最新题库及答案[整理].pdf...
  2. 【深度学习】利用一些API进行图像数据增广
  3. 2013.11.13
  4. linux和java_java内存和linux关系
  5. systemctl常用命令
  6. eclipse配置maven + 创建maven项目
  7. Tomcat服务器 Servlet
  8. Go面试题 | []int 能转换为 []interface 吗?
  9. SQL分割字符串详解
  10. “行业爆点可期,成本过高仍然是难题”年终盘点之激光雷达
  11. Linux 系统磁盘满处理方法
  12. Fibonacci费氏数列
  13. python植物大战僵尸辅助_Python自学入门,如何制作植物大战僵尸
  14. 雪浪数制CEO王峰:关于雪浪制造大脑的三大拷问 | 2018雪浪大会
  15. epics安装css,EPICS-synApps/areaDetector安装
  16. nand flash基础(一)
  17. android4.4广播,Android4.4 framework分析——广播的注册(BroadcastReceiver)和发送(sendbroadcast)过程分析...
  18. 移动硬盘、U盘因中断原因变为只读模式解决办法
  19. 8个强大的UI设计工具-设计师利器
  20. Linux学习笔记:联想拯救者Y7000进BIOS

热门文章

  1. Struts2文件上传超出配置大小的解决办法
  2. Spring使用ComponentScan扫描Maven多模块工程的其它模块
  3. 行内元素垂直方向位置调整的一些感悟和困惑
  4. CSDN Blog 之七宗罪
  5. webClient请求JAVA超时解决方案
  6. 解决 Error L6915E 问题
  7. 解决Ubuntu刚装好的时候su命令密码错误的问题
  8. jenkins构建后接受者收不到邮件问题解决方案
  9. 【方案分享】2021美图美学营销方案.pdf(附下载链接)
  10. 【白皮书分享】技术重构社会供应链:未来科技趋势白皮书.pdf(附下载链接)...