『壹』 java在線考試系統的考試界面要個時間限制,怎麼弄(jsp)
jsp頁面做一個倒計時的提示就可以控制時間了。
實現方法如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<div id="showTimes"></div>
<%
long current_time=System.currentTimeMillis();
long end_time=1337875200000l;
long time=end_time-current_time;
%>
<script>
var second = <%= time / 1000%>; // 剩餘秒數
// 寫一個方法,將秒數專為天數
var toDays = function(){
var s = second % 60; // 秒
var mi = (second - s) / 60 % 60; // 分鍾
var h = ((second - s) / 60 - mi ) / 60 % 24; // 小時
var d = (((second - s) / 60 - mi ) / 60 - h ) / 24 // 天
return "剩餘:" + d + "天" + h + "小時" + mi + "分鍾" + s + "秒";
}
//然後寫一個定時器
window.setInterval(function(){
second --;
document.getElementById("showTimes").innerHTML = toDays ();
}, 1000);
</script>
『貳』 jsp考試系統 如何在試題頁面實現上一題 下一題選擇 請具體說明
可以弄一個超鏈接。查詢資料庫的時候每頁只顯示一條記錄,點擊超鏈接「上一題」「下一題」時可以讀取上、下一條記錄。
需要先求出一共有多少條記錄,並設置每頁顯示多少條記錄。
int pageSize=1,pageCount=0,rowCount=0,pageNow=1;
String pageNow_n=request.getParameter("pageNow");
if(pageNow_n!=null)
{
pageNow=Integer.parseInt(pageNow_n);
}
try
{
String sql3="select count(*) from 表名";
pstm=conn.prepareStatement(sql3);
rs=pstm.executeQuery();
if(rs.next())
{rowCount=rs.getInt(1);}
if(rowCount%pageSize==0)
{pageCount=rowCount/pageSize;}
else{pageCount=rowCount/pageSize+1;}
String sql2="select * from 表名limit ?,?";
pstm=conn.prepareStatement(sql2);
pstm.setInt(1,(pageNow-1)*pageSize);
pstm.setInt(2,pageSize);
rs=pstm.executeQuery();
}
catch(Exception e)
{
e.printStackTrace();
}
while(rs.next()){%>
<tr>
顯示查詢的內容<%}%>
<%if(rs.next()){%>
<%if(pageNow!=1){
%>
<a href="頁面名.jsp?pageNow=<%=pageNow-1%>">上一題</a>
<%}
if(pageNow!=pageCount){
%>
<a href="頁面名.jsp?pageNow=<%=pageNow+1%>">下一題</a>
<% }%>
『叄』 請教jsp在線考試系統問題
1.考勤這塊你是不是要做一個考試紀律的問題?比如考試開始15分鍾不準答題,結束前30分鍾不許交卷?這個可以試試用Quartz來實現。按時交卷可以用JavaScript的setTimeOut來實現.
2.全半形字元是不是在錄入或導入試題的時候,判斷資料庫中是不是有這道題?
避免出現重復題情況。這個可以用lucene加上庖丁解牛分詞包來實現。
3.隨即出題隨即出題,你首先要保證題目數要足夠,比如要出struts科目下面的題40道,資料庫中至少要有40道,否則就會出現重復題。然後寫一個演算法,來判斷本科目下要選出幾道題,和其他科目的題一起組成試卷。如果題庫中struts有40道,我要出30道,hibernate再出10道,一起組成一張試卷。在struts出題的時候我只要篩選出10道題就可以了。這只是一個小演算法,來提高效率。保證不發生重復,我想了一個辦法。把要出科目的題目編號都查找出來,放到一個list,生成一個隨機數,選取一道題目,然後再在list中把相應的編號移除。直到找夠題目。這是我的做法,肯定還有更好的,有待發掘。
我曾經做過一個在線考試系統,不是很成功。