Skip to content

Latest commit

 

History

History
40 lines (33 loc) · 2.47 KB

数据库设计.md

File metadata and controls

40 lines (33 loc) · 2.47 KB

数据库设计

###需求问题: ####家长.老师.学生关系

  • 1.家长可以通过软件界面找到班级老师
  • 2.老师和家长的会话可以在会话列表里可删除可查找
  • 3.老师和家长的对话中可以很准确的查看对方的信息
  • 4.老师和家长的信息是数据库导入的
  • 5.导入信息错误,好友(老师和家长)关系可以添加,跨班级可以添加好友(指老师和家长或是老师和老师或是家长和家长)
  • 6.创建班级表:person_table (记录老师和家长信息的表)和class_table(记录班级信息的表)之间的关系是多对多的,即person和相关的班级实现多对多
  • 7.老师发送消息是以班级为单位的

###数据库设计: ####信息Model

  • 信息分为:聊天信息ChatMessage,通知信息NoteMessage,添加好友信息RequestMessage 他们共同继承Message父类
  • 在Hibernate中实现:
  • 用Hibernate的继承映射joined-subclass,父类实例保存在父类里,子类实例则由父类表和子类表共同存储。

人物Model

  • 人物分为学生,家长,老师。
  • 目前想法:
  • 建立四个表:老师信息表,统计班级信息表,家长信息表,学生信息表。
  • 老师信息表和统计班级信息表实现多对多的映射关系,即老师和所管理的班级实现关联。
  • 家长信息表和学生信息表实现多对多映射关系,即父母和自己的孩子实现对应。
  • 老师可以通过所管理的班级信息,查找家长信息表中记录孩子班级的字段来找到相应的家长,进而可以显示对应的孩子
  • 老师可以通过所管理的班级信息,查找学生信息表中记录学生班级的字段来找到相应的学生,进而可以显示对应的家长
  • (老谭补充)

班级Model

  • 字段:id,className(班级名称例:一年级一班),classNum(班级序号例:1#101),persons(以多对多的形式记录与班级相关的‘家长和老师’)
  • 在Hibernate中实现增删改查,查找classNum,className,persons
  • 注意问题:
  • classNum,className非空,并且以规定的格式输入。在查找并且按一定条件排序时是以List的形式返回的数据。

人物发送信息关系

  • 老师以班级为单位给家长发信,老师可以通过查找统计班级信息表,在家长信息表记录孩子所属班级的字段里找到该班级的家长,给家长发信息
  • 老师也可以指定发信息的家长,单独与家长联系