在做在线考试~请问如何在一个jsp页面里实现一道一道题目通过点下一题的出现

盒丶小盒 发布于 2016/05/22 16:12
阅读 898
收藏 0
本来所有的题目存在数据库内,通过sql语句得到list放到一个域,读取这个域用for循环就所有的题目都显示出来到一张试卷里。现在我想要一个页面一次出现一道题目,点击下一题就下一题,上一题就上一题,这个应该是用什么思路去实现啊?求帮助啊~~~
加载中
0
阿亮~
阿亮~
首先应该有题库,在题库中选择试题生成一套试卷,试卷中有,试卷ID、试题ID、排序。答题选择试卷进行,上一题为序号减一,下一题序号加一,修改试卷需重新生成排序。
0
maradona
maradona

实现方式很多,如果一次都查出来,那就前端处理呗,写js,只是需要写较多的js

也可以后端处理,一个jsp就展示一题,需要解决的问题是,如何找到下一题的记录?

其实无非就是维护一个上下题的关系,比如上题知道下题的ID,下题知道上题的ID,或者顺序规则,当前顺序加一减一就能找到上下题,这两种方式需要增加额外的数据库字段,创建/更新试卷时需维护这个字段,

1.这样就需要题目表有一个标识顺序的字段,且是连续的,需要创建的时候把顺序加进去,请求的下一题的时候只要把试卷ID和顺序字段传入后台就能查到具体题目

2.如果是第二种处理方式,那创建试卷的时候需要维护一个类似链表的结构,一条题目记录需要知道上下题的ID,上题为空的为第一个,下题为空的为最后一个,进入下一题只需要页面传入下一题的ID就可以拿到题目的数据

3.还有就是不新增字段,按其他字段顺序排序(甚至直接不排序,用默认的),就把试卷所有题目的list存入session,页面做下标记当前下标是几,去session取下一个题目的对象即可

4.如果懒得做session,那就直接写sql搞出个顺序来(比如oracle的rownum),然后页面按照第一条处理


0
b
beastxiao
全部放页面上,除当前题目外的都隐藏,在放两个按钮,来控制哪个一个显示即可
0
lyle_luo
lyle_luo

呵呵 next pre


0
返回顶部
顶部