网友们好!
我现在做毕业设计,是用java开发B/S架构的在线考试系统,其中要实现下面的一个功能,以解决学院机房机器的不稳定问题。
如果浏览器不幸崩溃,同一学号重新登陆后,能够恢复到崩溃前一刻的状态。要做到这一点,我的想法就是实时保存考生的作答。
但是,有m个考生考试,每个考生会做n道天空题(只需要考虑填空题),每道题有1到q个待填的空。
对于一道题有一个以上的空,我想可以用分隔符(例如&div)把答案隔开。因为一个答案一般不会太长,所以整条字符串的长度应该也可以接受。
但是,m个考生的n道题目的作答信息,这个关系我不太清楚怎么实现。如果在数据库中,为每个学生的作答信息都建一个两列的表(题号,作答),那么就得建立m个表,直觉上认为这是个“不太正常”的做法。
要么就在文本框焦点切换,或者按下“确认作答”按钮后,就把作答信息保存在外部文件(例如txt,xml)中,即使这样也要建立m个这样的外部文件,但比建立m个数据表貌似是顺眼多了。
或许还有其他我没有想到的,好得多的方法,大家给点意见吧,谢谢!
我现在做毕业设计,是用java开发B/S架构的在线考试系统,其中要实现下面的一个功能,以解决学院机房机器的不稳定问题。
如果浏览器不幸崩溃,同一学号重新登陆后,能够恢复到崩溃前一刻的状态。要做到这一点,我的想法就是实时保存考生的作答。
但是,有m个考生考试,每个考生会做n道天空题(只需要考虑填空题),每道题有1到q个待填的空。
对于一道题有一个以上的空,我想可以用分隔符(例如&div)把答案隔开。因为一个答案一般不会太长,所以整条字符串的长度应该也可以接受。
但是,m个考生的n道题目的作答信息,这个关系我不太清楚怎么实现。如果在数据库中,为每个学生的作答信息都建一个两列的表(题号,作答),那么就得建立m个表,直觉上认为这是个“不太正常”的做法。
要么就在文本框焦点切换,或者按下“确认作答”按钮后,就把作答信息保存在外部文件(例如txt,xml)中,即使这样也要建立m个这样的外部文件,但比建立m个数据表貌似是顺眼多了。
或许还有其他我没有想到的,好得多的方法,大家给点意见吧,谢谢!
解决方案 »
- 请教下在jackson json里面如何解析json数组字符串?
- 严重: Error listenerStart
- 不知道哪儿错啦!
- 失败的一米 从jndi里拿出来的conn 被我close掉
- j2ee高手进来指点一下怎么命名!
- 表单信息保存到session,跳转到servlet,一直报404错误
- Weblogic服务器,在EJB中用JNDI查找连接池的问题
- 关于实现JSP分页的JAVABEAN
- 如何解决JDBC+MYSQL中文问题,在线等待!
- 帮忙看看下面的实体类是怎么生成的?XML生成JAVA 实体类
- 跪求:expert one-on-one J2EE Development without EJB中文版电子档
- struts1和struts2
2. 保存考生回答的问题的id,选择题不要保存具体的文字信息,只保存答案的id,填空题再保存回答的答案。3. “对于一道题有一个以上的空,我想可以用分隔符(例如&div)把答案隔开”:为了保证安全问题,被保存进来的内容需要编码一下,例如使用base64,或者javascript的escape(),这样,编码后的内容就只有普通字母和几个有限的特殊字符了
我做过一个能考程序题的考试系统也是BS的 到达提交高峰时甚至服务器会丢失1 2个提交数据 因此最后在提交时还做了提交数据复查的功能 而为了防止登录高峰的压力 试卷做成了提前生成静态文件的方式
所以建议LZ尽量保存本地
要不然就每道题目修改时AJAX保存一下 服务端尽量缩短提交时间 但是登录时需要AJAX获取试卷数据 防止登录高峰导致服务端崩溃