如何将数据库中的问题存储在servlet上并显示在html页面上?测验申请

时间:2014-03-11 16:27:47

标签: java mysql jsp servlets

我是jsp和servlets的新手!我必须创建一个测验应用程序。我在MYSQL数据库中创建了一个问题和答案列表。如何存储这些问题并将其显示在HTML页面上,验证答案并显示分数? 我不知道如何存储问题。逐个显示它们并验证它们! 救命啊!

1 个答案:

答案 0 :(得分:0)

我只会解释创建简单测验的概念。现在你没有提供任何信息:测验结果会被保存吗?有人可以通过应用程序本身进行新的测验吗?等等。 我还建议您阅读Spring和/或J2EE书籍或观看创建基本CRUD应用程序的教程,然后再继续。

无论如何,在这里我解释了创建简单测验的概念!这是不安全的(用户可以在提交后改变他的答案)。但它只是给你一个如何设置(简单!)测验的例子。

创建表'问题'和表'答案'。如果你有多个测验,你也会有一个'测验'表。然后问题表将有一个名为“quiz_id”的额外列。

问题表中的一行应包含您的问题。您可能想要使用的列是:(显然)id,question。

我认为测验将是多项选择。因此,在答案表中,您将拥有“id”,“question_id”,“answer”和“is_correct”列。后者说相应问题的答案是否正确。

所以每个答案都提到了它的问题(通过question_id)。在这种情况下,您可以为一个问题提供多个(正确的)答案。

我会给你一个提示,在每一页上显示问题(以及可能的答案): 由于这是一个简单的测验:

  • 使用URL(get参数)显示问题。这意味着:例如, examplesite.com/quiz/3 将显示测验的第三个问题。您将通过该参数获得该问题并在页面上显示。通过该问题ID,从数据库中获取所有答案,并在列表中显示给用户(复选框/单选按钮)。
  • 现在,您可以将用户选择的答案保存在数据库中,如果用户禁用了Cookie并意外关闭了浏览器,这是安全的。但是,由于我正在解释简单的测验并且我没有创建单独的用户表,为什么不保存用户在会话和cookie中选择的答案?
  • 检查用户是否在最后一个问题上,并在另一页上创建一个按钮以显示结果。例如。 examplesite.com/quiz/results

现在再一次,这不安全,因为用户仍然可以回到问题,然后修改所有答案,直到他得到一个好结果。但同样,它只是向您展示基本结构的外观。