freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

javaweb應(yīng)用開發(fā)在線模擬考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文(編輯修改稿)

2025-07-25 08:08 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 注冊(cè)模塊在此模塊,考生需要填寫用戶名、密碼、確認(rèn)密碼、真實(shí)姓名。如若填寫中缺少一項(xiàng),那么會(huì)有提示,其功能也是由上面所說的一樣,通過調(diào)用javascript實(shí)現(xiàn)的,這里只提供下截圖,主要代碼如上,如圖41所示:圖41 注冊(cè)提示頁(yè)面當(dāng)用戶填寫的內(nèi)容完全符合注冊(cè)標(biāo)準(zhǔn)后,點(diǎn)擊注冊(cè)按鈕,會(huì)轉(zhuǎn)到注冊(cè)成功的頁(yè)面;如若用戶名已經(jīng)被注冊(cè),會(huì)轉(zhuǎn)到注冊(cè)失敗頁(yè)面,提醒注冊(cè)用戶可能是該用戶名已經(jīng)注冊(cè)。在此只以注冊(cè)成功的頁(yè)面為例,如圖42所示:圖42 注冊(cè)成功頁(yè)面完成注冊(cè)模塊的主要代碼如下所示:首先獲取上個(gè)頁(yè)面?zhèn)鬟^來(lái)的數(shù)據(jù),用戶名、密碼、真實(shí)姓名String username = (username)。 String password = (password)。 String realname = (realname)。(username)。 //打印出username其次開始連接數(shù)據(jù)庫(kù) try{ ( ).newInstance()。 Connection conn=(jdbc:mysql://localhost:3306/myexam?user=rootamp。password=890427amp。useUnicode=trueamp。characterEncoding=gbk)。 Statement stmt=()。 ResultSet rs=null。查詢user表,看用戶名是否存在 String sql=select * from user where username like 39。+username+39。 rs=(sql)。 如果存在,提示“ 您好,您注冊(cè)的用戶名已經(jīng)存在,請(qǐng)重新輸入 ”,如果不存在,把接收過來(lái)的值付給新的變量: String s_username=(username)。 String s_password=(password)。 String s_realname=(realname)。 執(zhí)行SQL插入語(yǔ)句,把得到的值插入到user表中sql = insert into user(username,password,realname) value(39。+username+39。,39。+password+39。,39。+realname+39。)。如果插入成功,提示:“恭喜您注冊(cè)成功!” 考生登錄系統(tǒng)并且用戶名也密碼正確后,會(huì)直接跳轉(zhuǎn)到學(xué)生主頁(yè),本頁(yè)面中,考生可以在左側(cè)選擇自己下一步要做的事情,有開始考試、歷史成績(jī)查詢、修改密碼。在頁(yè)面中間,有提示語(yǔ),告訴考生每個(gè)按鈕都可以操作什么功能;若考生對(duì)考試流程不太熟悉,可以點(diǎn)擊幫助,來(lái)查詢相關(guān)問題的答案。如圖43所示:圖43考生主頁(yè) 開始考試模塊考生點(diǎn)擊開始考試,會(huì)首先彈出關(guān)于所選考試科目的一些介紹,比如考試時(shí)間和總共有多少道題目等,然后點(diǎn)擊開始考試,倒計(jì)時(shí)開始,考生選擇上一題,下一題進(jìn)行答卷,當(dāng)考生答到最大題數(shù)時(shí),下一題變成完成答卷按鈕。點(diǎn)擊完成答卷,進(jìn)入成績(jī)頁(yè)面,考生可以知道自己的成績(jī),并且,成績(jī)通過后臺(tái),插入到數(shù)據(jù)庫(kù)中。如圖44所示:圖44 考生考試頁(yè)面執(zhí)行的具體代碼如下所示:% HttpSession sess=(HttpSession)(true)。 int category = (Integer)(category)。 String username = (username)。 MysqlDjtDao md = new MysqlDjtDao()。 //引進(jìn)包 int valid = (username,category)。//去test_record表查詢有無(wú)考試記錄 valid=0。//控制返回值,自己可以自由修改。 if( valid==0 ){ Calendar cl = ()。//java util 包 表提供的系統(tǒng)時(shí)間Calendar long starttime = ()。//得到當(dāng)前時(shí)間的毫秒數(shù) long endtime = starttime+1800000。 (3600)。 //設(shè)置session的存活時(shí)間 (username,username)。 (endtime,endtime)。 ListInteger tmid = new ArrayListInteger()。//指定傳入的類型 建立一個(gè)集合 準(zhǔn)備存放抽到的題目的ID號(hào) (0)。//設(shè)置默認(rèn)值0 (tmid,tmid)。 int fenshu =0。 (fenshu,fenshu)。 ListInteger ddcount = new ArrayListInteger()。 (ddcount,ddcount)。 ListQuestion allwts = new ArrayListQuestion()。//建立問題question對(duì)應(yīng)的實(shí)體類 來(lái)存放查到的題目信息 ListInteger listsId = (category)。//某個(gè)科有多少個(gè)問題 int qnum = (category)。//共需要幾個(gè)問題 (qnum,qnum)。 Random rand = new Random()。//Java提供的得到數(shù)字的類 for( int a=0。aqnum。a++ ){//開始抽題 int hao = (()1)。//取一個(gè)隨機(jī)數(shù),不超過題目的總數(shù) ()取一個(gè)隨機(jī)數(shù) for( Integer vd:tmid ){//去掉重復(fù)的題 泛型循環(huán) if( vd==hao ){ hao = (()1)。//如果重復(fù)再重新抽,即重新生成一個(gè)隨機(jī)數(shù) } } int bcid = (hao)。//根據(jù)抽到的數(shù)得到該題目的Id號(hào) Question qs = (bcid)。//根據(jù)Id號(hào)查詢題目的信息 (qs)。//把查到的題目的信息插入到allwts集合中 (hao)。//把已經(jīng)用過的隨機(jī)數(shù)放入集合,防止重復(fù)抽題 } (allwts,allwts)。% jsp:forward page= / % }else{ (errorInfo,已經(jīng)答過題了,不能重復(fù)答題!)。 % jsp:forward page= / % } % 歷史成績(jī)模塊考生點(diǎn)擊歷史成績(jī),會(huì)先遷移到考試科目選擇頁(yè)面,當(dāng)考生通過下拉列表,選中要查詢的科目,然后點(diǎn)擊確認(rèn),會(huì)從數(shù)據(jù)庫(kù)中提取出考生的成績(jī),然后在表格中顯示。點(diǎn)擊左下角的返回按鈕,回到考試科目選擇頁(yè)面,繼續(xù)查詢其他科目成績(jī),如圖45所示:圖45 考生成績(jī)查詢頁(yè)面成績(jī)查詢頁(yè)面主要代碼如下所示:接收上個(gè)頁(yè)面?zhèn)鬟^來(lái)的值 String category = (category)。 String[] result = null。 int count = 0。 開始連接數(shù)據(jù)庫(kù) ( ).newInstance()。 Connection conn=(jdbc:mysql://localhost/Myexam?user=rootamp。password=890427amp。useUnicode=trueamp。characterEncoding=gbk)。 Statement stmt=()。 數(shù)據(jù)庫(kù)結(jié)果集的數(shù)據(jù)表 ResultSet rs=null。 ResultSet rr = null。執(zhí)行sql語(yǔ)句,查詢test_record表中是否有與接收的值相同項(xiàng) String sqlcount = select count(*) from test_record where (category_id=39。+category+39。 and username =39。+s+39。)。 rr = (sqlcount)。 if(()){ count = ((1))。 }定義一個(gè)新的字符串?dāng)?shù)組 result = new String[count]。 執(zhí)行sql語(yǔ)句,查詢test_record表 String sql = select * from test_record where (category_id=39。+category+39。and username =39。+s+39。)。執(zhí)行剛建立的SQL語(yǔ)句,并把結(jié)果返回到結(jié)果集對(duì)象中 rs = (sql)。 int i=0。把結(jié)果集數(shù)據(jù)表中的數(shù)據(jù)附到數(shù)組中 while(()){ result[i++] = (1)+:+(2)+:+(3)+:+(4)+:+(5)。循環(huán)輸出所有項(xiàng) % for(int k=0。k。k++) { % 查詢category表,顯示出科目名稱 %String sql2 = select category_name from category where category_id =39。+category+39。執(zhí)行剛建立的SQL語(yǔ)句,并把結(jié)果返回到結(jié)果集對(duì)象中rs = (sql2)。 String rs1=null。 if(()){ rs1= (1)。打印出結(jié)果 (rs1)。 } % td width=80 %(rs1)。% /td td width=400取出表的第4列并顯示出來(lái)%=result[k].split(:)[3] % /td td width=100取出表的第5列并顯示出來(lái)%=result[k].split(:)[4] % 修改密碼模塊考生可以通過修改密碼模塊,來(lái)修改自己登錄本考試系統(tǒng)的登錄密碼。在修改頁(yè)面中,需要填寫原密碼、新密碼和確認(rèn)新密碼。當(dāng)考生忽略其中一項(xiàng)沒有填寫或者輸入的新密碼和確認(rèn)密碼不一致,會(huì)有提示信息,某項(xiàng)不能為空或密碼不一致;當(dāng)考生都輸入完畢后,點(diǎn)擊修改按鈕,系統(tǒng)通過后臺(tái),連接數(shù)據(jù)庫(kù)來(lái)確認(rèn)考生輸入的原密碼和用戶名是否匹配,如果匹配,那么更新數(shù)據(jù)庫(kù),把原密碼替換掉,然后轉(zhuǎn)到修改密碼成功頁(yè)面;若不匹配,則直接轉(zhuǎn)到修改密碼失敗頁(yè)面,修改密碼頁(yè)面如圖46所示:圖46 考生修改密碼頁(yè)面 教師模塊教師登錄系統(tǒng)后,若用戶名和密碼正確,直接跳轉(zhuǎn)到教師首頁(yè),在此頁(yè)面,教師可以選擇試題維護(hù)、試卷設(shè)置、歷史成績(jī)、修改密碼;根據(jù)頁(yè)面中間的操作提示,可以知道每個(gè)選項(xiàng)都可以進(jìn)行什么操作。如試題維護(hù)可以對(duì)試題進(jìn)行添加、修改、刪除操作。如下圖47所示:圖47教師主頁(yè) 試題維護(hù)模塊教師點(diǎn)擊試題維護(hù),首先需要選擇要維護(hù)的試卷類別,也就是科目名稱,選擇好后,點(diǎn)擊確認(rèn),頁(yè)面會(huì)顯示您選擇的類別下的所有題目,在該頁(yè)面下,教師可以進(jìn)行對(duì)試題的修改,刪除和添加操作,當(dāng)點(diǎn)擊不同的操作,會(huì)跳轉(zhuǎn)到不同的頁(yè)面中,下面是教師對(duì)題目進(jìn)行增、刪、改的具體界面以及執(zhí)行的主要代碼。圖48為試題列表頁(yè)面:圖48 試題列表頁(yè)面:點(diǎn)擊修改,會(huì)彈出提示框等待確認(rèn),這樣減少因?yàn)檎`點(diǎn)而帶來(lái)的不必要的麻煩。點(diǎn)擊確定后,如果修改成功,會(huì)出現(xiàn)修改成功頁(yè)面,在該頁(yè)面中,您可以選擇下一步的操作,如點(diǎn)擊進(jìn)入教師主頁(yè)或點(diǎn)擊進(jìn)入試題列表頁(yè)面。如圖49所示:圖49 教師修改試題頁(yè)面修改試題操作主要代碼:接收上一個(gè)頁(yè)面?zhèn)鬟^來(lái)的值 String question_id = (question_id)。通過session把question_id傳到下個(gè)頁(yè)面 (question_id,question_id)。接收傳過來(lái)的值并付值給新的變量 String category = (category)。 String[] result = null。 int count = 0。開始連接數(shù)據(jù)庫(kù) ( ).newInstance()。 加載JDBC驅(qū)動(dòng)程序 Connection conn=(jdbc:mysql://localhost/Myexam?user=rootamp。password=890427)。 Statement stmt=()。 結(jié)果集初始化為空 ResultSet rs=null。 ResultSet rr = null。執(zhí)行sql語(yǔ)句,查詢question表 String sqlcount = select count(*) from question where question_id=39。+question_id+39。 rr = (sqlcount)。 if(()){ count = ((1))。 }建立一個(gè)新的字符串?dāng)?shù)組 result = new String[count]。 執(zhí)行sql查詢語(yǔ)句 String sql
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1