使用MongoDB怎么实现问卷/考试设计功能

  介绍

本篇文章给大家分享的是有关使用MongoDB怎么实现问卷/考试设计功能,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

<强> MongoDB的特点

MongoDB是一个面向文档存储的数据库。在MongoDB中,一条记录叫做文档(文档),由类似于JSON结构的键值对组成只

使用MongoDB怎么实现问卷/考试设计功能

由于类似于MongoDB直接存储JSON的特性,MongoDB天生适合作为存储结构复杂的数据结构的介质。类似于问卷调查和考试这种需求,用mysql这种关系型数据库实现起来太过复杂、效率低下;而如果使用MongoDB来实现的话,则会发现异常清晰简单。

<强>需求分析

在一张试卷中,会有很多个问题,问题的类型大体上可以分为单选的题,多选题,判断题,简答题等。每一个问题又会有很多个选项,选项可以是文字描述也可以是图片又或者图文结合。

使用MongoDB怎么实现问卷/考试设计功能

那么一张试卷的JSON格式应该大体上长成这样:

使用MongoDB怎么实现问卷/考试设计功能

当然这只是最简单的数据结构,要完成一张试卷,还需要加入更多的属性。

<强>结构设计

我们采用自底向上的结构设计方式,先对每个选项的数据结构进行设计。

<强>选项设计

public  class  Option  {/* *   *,才能选项类型   ,*/,private  Integer  oType =, 1;/* *   *,才能选项内容   ,*/,private  String 文本;   ,/* *   *,才能选项图片   ,*/,private  String  img;/* *   *,才能是否正确答案   ,*/,private  Boolean ;/* *   *,才能用户是否选择   ,*/,private  Boolean 选择;   ,……

选项类型<代码> oType> 用来标志这个选项是否是正确答案,用于自动判卷;<代码> 用选择来标志用户有没有选择这个答案。

<强>问题设计

public  class  Question  extends  MongoBean  {/* *   *,才能数据的id   ,*/,private  String  dataId;/* *   *,才能题目类型,1判断题;2单选题;3多选题   ,*/,private  Integer  qType;/* *   *,才能题目标题   ,*/标题,private  String ;/* *   *,才能题目选项   ,*/,private  List