版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、課程設(shè)計(jì)報(bào)告課程: jsp 學(xué)號(hào): : 班級(jí): 教師: 徐州師范大學(xué)電腦科學(xué)與技術(shù)學(xué)院課程設(shè)計(jì)任務(wù)書姓 名 學(xué) 號(hào) 班 級(jí) 課程名稱數(shù)據(jù)庫系統(tǒng)概論課程性質(zhì)課程設(shè)計(jì)同組成員 分工學(xué)生選課操作、教師管理操作兩部分功能的實(shí)現(xiàn)設(shè)計(jì)時(shí)間 設(shè)計(jì)名稱學(xué)生選課管理信息系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)設(shè)計(jì)要求系統(tǒng)功能基本要求:教師信息,包括教師編號(hào)、教師、性別、年齡、學(xué)歷、職稱、畢業(yè)院校,健康狀況等。學(xué)生信息,包括學(xué)號(hào)、所屬院系、已選課情況等。教室信息,包括,可容納人數(shù)、空閑時(shí)間等。選課信息,包括課程編號(hào)、課程名稱、任課教師、選課的學(xué)生情況等。成績(jī)信息,包括課程編號(hào)、課程名稱、學(xué)分、成績(jī)。按一定條件可以查詢,并將結(jié)果打印輸出。
2、設(shè)計(jì)思路與設(shè)計(jì)過程設(shè)計(jì)思路:,本系統(tǒng)結(jié)合數(shù)據(jù)庫和JSP編程實(shí)現(xiàn)了學(xué)生選課管理系統(tǒng)。學(xué)生選課管理系統(tǒng)分為三個(gè)子模塊:第一模塊是學(xué)生選課的頁面操作,包括個(gè)人信息,密碼修改,查詢成績(jī),選課,退選五個(gè)功能;第二模塊是教師操作頁面,包含個(gè)人信息,密碼修改,錄入成績(jī),查詢選課情況,查看教室信息;第三模塊是管理員,包含學(xué)生信息管理增加、修改、刪除、查詢,教師信息管理增加、修改、刪除、查詢,管理員信息管理增加、修改、刪除、查詢。計(jì)劃與進(jìn)度構(gòu)思整個(gè)系統(tǒng)的框架,在數(shù)據(jù)庫中建表主要對(duì)學(xué)生選課的一些操作進(jìn)行jsp編碼主要對(duì)教師的相關(guān)操作進(jìn)行jsp編碼整合整個(gè)實(shí)驗(yàn),并進(jìn)行修改寫課程設(shè)計(jì)的報(bào)告任課教師意 見說 明學(xué)生選課
3、管理系統(tǒng)一系統(tǒng)需求分析學(xué)生選課系統(tǒng)是一個(gè)學(xué)校不可缺少的部分,它的內(nèi)容對(duì)于學(xué)校的決策者和管理者來說都至關(guān)重要,所以學(xué)生選課系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。隨著科學(xué)技術(shù)的不斷提高,電腦科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。 作為電腦應(yīng)用的一部分,使用電腦對(duì)選課信息進(jìn)行管理,有著手工管理所無法比擬的優(yōu)點(diǎn)。這些優(yōu)點(diǎn)能夠極大地提高人事勞資管理的效率,也是企業(yè)的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。 因此,開發(fā)這樣一套軟件成為很有必要的事情,在下面的各章中我們將以開發(fā)一套學(xué)生選課系統(tǒng)為例,談?wù)勂溟_發(fā)過程和所涉及到的問題及解決方
4、法。 本實(shí)驗(yàn)實(shí)現(xiàn)的學(xué)生選課管理系統(tǒng)主要包括以下功能:1完成數(shù)據(jù)的錄入和修改,并提交數(shù)據(jù)庫保存。其中的數(shù)據(jù)包括:學(xué)生信息、課程設(shè)置、學(xué)生成績(jī)以及操作員信息等; 2.設(shè)計(jì)實(shí)現(xiàn)學(xué)生信息查詢,選課管理、退選管理、分?jǐn)?shù)查詢,課程的瀏覽教師信息查詢、教室空閑時(shí)間查詢等JSP頁面 。 3具備一定的安全性管理功能。包括操作員的權(quán)限設(shè)置、修改密碼設(shè)置、注銷和等功能。二系統(tǒng)總概括本系統(tǒng)結(jié)合數(shù)據(jù)庫和JSP編程實(shí)現(xiàn)了學(xué)生選課管理系統(tǒng)。學(xué)生選課管理系統(tǒng)分為三個(gè)子模塊:第一模塊是學(xué)生選課的頁面操作,包括個(gè)人信息,密碼修改,查詢成績(jī),選課,退選五個(gè)功能;第二模塊是教師操作頁面,包含個(gè)人信息,密碼修改,錄入成績(jī),查詢選課情況
5、,查看教室信息;第三模塊是管理員,包含學(xué)生信息管理增加、修改、刪除、查詢,教師信息管理增加、修改、刪除、查詢,管理員信息管理增加、修改、刪除、查詢。學(xué)生選課教師管理管理員學(xué)生選課管理系統(tǒng)圖1 系統(tǒng)的功能模塊圖2數(shù)據(jù)庫設(shè)計(jì)數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)本系統(tǒng)主要有三個(gè)實(shí)體,其中有學(xué)生和課程兩個(gè)實(shí)體集,一個(gè)學(xué)生可以選修假設(shè)干門課程,一門課程也可以被多個(gè)學(xué)生選修,這兩個(gè)實(shí)體集之間是多對(duì)多聯(lián)系,還有教師和課程兩個(gè)實(shí)體,一個(gè)老師可以教授假設(shè)干門課程,一門課程卻只能有一個(gè)老師教授,這兩個(gè)實(shí)體集之間是一對(duì)多聯(lián)系。通過選課成績(jī)將老師和學(xué)生聯(lián)系在一起。為保證系統(tǒng)的安全性,設(shè)置了操作員這一實(shí)體集,用來存放合法用戶的編號(hào)、密碼
6、。本系統(tǒng)的E-R圖如下:學(xué)生學(xué)號(hào)密碼院系性別 地址選修成績(jī)課程教授教師編 編號(hào)畢業(yè)院校健康狀況學(xué)歷密碼院系年齡性別職稱MNM1編 課程號(hào)編 課程名編 教師號(hào)編 學(xué)分編 學(xué)時(shí)編 地點(diǎn)編 總?cè)藬?shù)編 已選數(shù)編 院系管理員編號(hào)密碼圖2 系統(tǒng)的E-R圖數(shù)據(jù)庫邏輯結(jié)構(gòu)設(shè)計(jì)根據(jù)關(guān)系模型的轉(zhuǎn)換原則,上面的ER圖可轉(zhuǎn)換為如下所示的關(guān)系模型:student(sId,sName,sPass,dId)含義分別為:學(xué)生學(xué)號(hào),,密碼,所在系的編號(hào)stuDetailuserID,userSex,userMobil,useraddress含義分別為:學(xué)生信息學(xué)號(hào),性別, ,地址 teachertId,tPame,tPass,
7、dId含義分別為:教師學(xué)號(hào),,密碼,所在系的編號(hào)teaDetailuserID,userSex,userAge,useredu,usertitle,usersch,userhealth含義分別為:教師信息學(xué)號(hào),性別,年齡,學(xué)歷,職稱,畢業(yè)院校,健康狀況course(cId,cName,tId,credit,period,cPlace,cNumall,cNum,dId)含義分別為:課程課程號(hào),名稱,教師號(hào),學(xué)分,學(xué)時(shí),上課地點(diǎn),總?cè)藬?shù),已選人數(shù),院系號(hào)choosecourse(cId,sId, Grade)含義分別為:選修學(xué)號(hào),課程代碼,成績(jī)r(jià)oomroomname,roomnum,roomti
8、me含義分別為:教室教室名,容納人數(shù),空閑時(shí)間admin(aId,aPass)含義分別為:管理員管理員編號(hào), departmentdId,dName含義分別為:院系院系編號(hào),院系名 根據(jù)上面的E-R圖設(shè)計(jì)及關(guān)系模型的設(shè)計(jì),得出數(shù)據(jù)表的設(shè)計(jì),在本系統(tǒng)中主要的數(shù)據(jù)表如下:表1 學(xué)生表Student的表結(jié)構(gòu)主碼列 名數(shù)據(jù)類型寬度小數(shù)位空否備 注PksIdChar10 N學(xué)號(hào) sNameChar20 Y sPassChar2 Y密碼 dIdChar20 Y所在系號(hào)表2 學(xué)生信息表StuDetail的表結(jié)構(gòu)主碼列 名數(shù)據(jù)類型寬度小數(shù)位
9、空否備 注PkuserIDChar10 N學(xué)號(hào) userSexChar10 Y性別 userMobilChar30 Y userAddressChar50 Y地址表3 教師表teacher的表結(jié)構(gòu)主碼列 名數(shù)據(jù)類型寬度空否備 注PktIdChar10N編號(hào) tNameChar20Y tPassChar2Y密碼 dIdChar20Y所在系號(hào)表4 教師信息表teadetail的表結(jié)構(gòu)主碼列 名數(shù)據(jù)類型寬度空否備 注PkuserIDChar10N學(xué)號(hào) userSexChar10Y性別
10、60;userAgeChar50Y usereduChar30Y學(xué)歷usertitleChar30Y職稱userschChar30Y畢業(yè)院校 UserhealthChar50Y健康狀況表5 課程信息表Course的表結(jié)構(gòu)主碼列 名數(shù)據(jù)類型寬度空否備 注PkcIdChar10N課程號(hào) coNameChar20Y課程名稱 tIdChar10Y教師號(hào) creditChar8Y學(xué)分periodChar8Y學(xué)時(shí)cPlaceChar10Y上課地點(diǎn)cNumAllChar4Y總?cè)藬?shù)cNumChar4Y已選人數(shù)dIdChar10Y院系號(hào)表6 選課成績(jī)表choosecou
11、rse的表結(jié)構(gòu)主碼列 名數(shù)據(jù)類型寬度空否備 注PkcIdChar5N課程代碼sIdChar3N學(xué)號(hào) gradeDecimal5Y成績(jī)表7 教室信息表room的表結(jié)構(gòu)主碼列 名數(shù)據(jù)類型寬度空否備 注PkroomnameChar10N教室名roomnumChar10N容納人數(shù) roomtimeChar10Y空閑時(shí)間 表8 管理員表admin的表結(jié)構(gòu)主碼列 名數(shù)據(jù)類型寬度空否備 注PkaIdChar10N管理員編號(hào) aPassChar10Y管理員 表9 院系表department的表結(jié)構(gòu)主碼列 名數(shù)據(jù)類型寬度空否備 注PkdIdChar10N院系號(hào) dName
12、Char10Y院系名下面在系統(tǒng)實(shí)施階段就可以物理實(shí)現(xiàn)數(shù)據(jù)庫了,本系統(tǒng)使用前面實(shí)驗(yàn)已經(jīng)建好的服務(wù)器端SQL Server數(shù)據(jù)庫xuanke,具體創(chuàng)建方法見前面實(shí)驗(yàn)。三系統(tǒng)實(shí)現(xiàn)本實(shí)驗(yàn)是用JSP結(jié)合數(shù)據(jù)庫實(shí)現(xiàn)的,其中包含了三個(gè)主頁面,一是學(xué)生登錄頁面,二是教師登錄頁面,三是管理員登錄頁面。其中每個(gè)頁面中都會(huì)有菜單進(jìn)行相應(yīng)的操作。3.1 JSP文件代表的操作(1)主界面操作:Index.jsp/登錄界面包含學(xué)生、教師、管理員三個(gè)選項(xiàng)Login.jsp/密碼驗(yàn)證(2)學(xué)生選課 (a)學(xué)生選課界面:student.jps/菜單顯示studentIndex.html/歡送界面studentMessage.j
13、sp (b)個(gè)人信息:studMessSel.jsp/個(gè)人信息的頁面顯示 (c)密碼修改:stuM.jsp/在數(shù)據(jù)庫中修改密碼 stuMessMod.jsp/修改密碼界面 stuMessModSuc.jsp/修改成功(3)教師管理 (a)教師管理界面teacherIndex.html/歡送界面teacherMessage.jsp (b)個(gè)人信息:teacherMessSel.jsp/個(gè)人信息的頁面顯示 (c)密碼修改:teacherM.jsp/在數(shù)據(jù)庫中修改密碼 teacherMod.jsp/修改密碼界面 teaMessModSuc.jsp/修改成功3.2 數(shù)據(jù)庫的連接舉例:驗(yàn)證用戶類型和密碼
14、時(shí)的數(shù)據(jù)庫連接<body><%String name=(String)request.getParameter("username");String pass=(String)request.getParameter("userpass");String s=(String)request.getParameter("userselect");Connection conn=null;Statement stmt=null;ResultSet rs=null;String loginNum="0"
15、session.setAttribute("lnum",loginNum);tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");conn=DriverManager.getConnection("jdbc:odbc:xk","sa","");if(s.equals("1")String sql="select * from student where sId='"+name+"' an
16、d sPass='"+pass+"'"stmt=conn.createStatement();rs=stmt.executeQuery(sql);if(rs.next() loginNum="1"session.setAttribute("lnum",loginNum);session.setAttribute("name",name);out.print(name+"登陸成功,頁面跳轉(zhuǎn).");response.sendRedirect("student/st
17、udentIndex.html");else out.print("用戶名或密碼有誤.");response.sendRedirect("index.jsp");if(s.equals("2")String sql="select * from teacher where tId='"+name+"' and tPass='"+pass+"'"stmt=conn.createStatement();rs=stmt.executeQue
18、ry(sql);if(rs.next() loginNum="2"session.setAttribute("lnum",loginNum);session.setAttribute("name",name);out.print(name+"登陸成功,頁面跳轉(zhuǎn).");response.sendRedirect("teacher/teacherIndex.html");else out.print("用戶名或密碼有誤.");response.sendRedirect("
19、;index.jsp"); if(s.equals("3")String sql="select * from admin where aId='"+name+"' and aPass='"+pass+"'"stmt=conn.createStatement();rs=stmt.executeQuery(sql);if(rs.next()loginNum="3"session.setAttribute("lnum",loginNum)
20、;session.setAttribute("name",name);out.print("管理員"+name+"登陸成功,頁面跳轉(zhuǎn).");response.sendRedirect("admin/adminIndex.html");elseout.print("用戶名或密碼有誤.");out.print("<a href=index.jsp>登陸頁面</a>");catch(Exception e)out.print(e);/response.sen
21、dRedirect("index.jsp");%></body>3.3 具體操作(1)學(xué)生選課操作(a)登錄頁面圖1.1 學(xué)生登錄頁面主要代碼:<body><form name="loginform" method="post" action="login.jsp"><br><br><br><br><table width="500" height="150" border=&qu
22、ot;0" align="center"> <tr> <td align="center"><font size="5" color="#FFFFFF">歡送您使用學(xué)生選課系統(tǒng)</font></td> </tr> <tr></table><table width="294" border="0" align="center"> <
23、;tr> <td colspan="3"> </td> </tr> <tr> <td width="79">用戶名:</td> <td width="148"><input name="username" type="text" size="20" size="20" maxlength="30"></td>
24、; <td width="53" rowspan="2"><img src="image/logo_img.gif" width="37" height="40" onClick="loginclick()"> </td> </tr> <tr> <td>密碼:</td> <td><input name="userpass" type="passw
25、ord" size="20" size="20" maxlength="30"> </td> </tr> <tr> <td>用戶類型:</td> <td> <select name="userselect"> <option value="1" selected>學(xué)生</option> <option value="2">教師</opt
26、ion> <option value="3">管理員</option> </select> </td> <td> </td> </tr></table></form></body>(b)菜單操作圖1.2 學(xué)生選課系統(tǒng)的界面主要代碼:<table width="100%" border="0" cellpadding="0" cellspacing="1&qu
27、ot; bgcolor="#000000"> <tr> <td height="40" align="center" bgcolor="#00509F"><div align="center"><font color="#FFFFFF" size="4">學(xué)生選課系統(tǒng)</font></div></td> </tr> <tr> <td he
28、ight="40" align="center" bgcolor="#FFFFFF"><div align="left"><img src="image/index_01.gif" width="20" height="17"><a href="studMessSel.jsp" target="rightFrame"><font color="#0000FF&
29、quot; size="3">個(gè)人信息</font></a></div></td> </tr> <tr> <td height="40" align="center" bgcolor="#FFFFFF"><div align="left"><img src="image/index_01.gif" width="20" height="17
30、"><a href="stuMessMod.jsp" target="rightFrame"><font color="#0000FF" size="3">密碼修改</font></a></div></td> </tr> <tr> <td height="40" align="center" bgcolor="#FFFFFF"><
31、;div align="left"><img src="image/index_01.gif" width="20" height="17"><a href="gradeSelect.jsp" target="rightFrame"><font color="#0000FF"size="3" >成績(jī)查詢</font></a></div></td>
32、</tr> <tr> <td height="40" align="center" bgcolor="#FFFFFF"><div align="left"><img src="image/index_01.gif" width="20" height="17"><a href="courseSelect.jsp" target="rightFrame"
33、><font color="#0000FF"size="3" >選課查詢以及退選</font></a></div></td> </tr> <tr> <td height="40" align="center" bgcolor="#FFFFFF"><div align="left"><img src="image/index_01.gif"
34、 width="20" height="17"><a href="choosecourse.jsp" target="rightFrame"><font color="#0000FF" size="3">選課</font></a></div></td> </tr> <tr> <td height="40" align="center&quo
35、t; bgcolor="#FFFFFF"><div align="left"><img src="image/index_01.gif" width="20" height="17"><a href="zhuxiao.jsp" target="_top"><font color="#0000FF" size="3">注銷</font></a>
36、;</div></td> </tr></table>(c)個(gè)人信息顯示學(xué)生進(jìn)入后可以在菜單里進(jìn)行相應(yīng)的操作,點(diǎn)擊個(gè)人信息時(shí),就會(huì)出現(xiàn)該學(xué)生的信息.如下列圖所示:圖1.2 學(xué)生信息顯示的界面主要代碼:從數(shù)據(jù)庫中讀出相應(yīng)的信息:tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");conn=DriverManager.getConnection("jdbc:odbc:xk","sa","");String sql="s
37、elect * from student where student.sId='"+name+"'"System.out.println(sql);stmt=conn.createStatement();rs=stmt.executeQuery(sql);if(rs.next()sId=rs.getString("sId");sName=rs.getString("sName");dId=rs.getString("dId");String sql1="select * from
38、 stuDetail where userID ='"+name+"'"System.out.println(sql1);stmt=conn.createStatement();rs=stmt.executeQuery(sql1);if(rs.next()Sex=rs.getString("userSex"); Mobil=rs.getString("userMobil"); Addr=rs.getString("userAddress");Connection connd=null;St
39、atement stmtd=null;ResultSet rsd=null;connd=DriverManager.getConnection("jdbc:odbc:xk","sa","");stmtd=connd.createStatement();rsd=stmtd.executeQuery("select dName from department where dId='"+dId+"'");if(rsd.next()dName=rsd.getString("dN
40、ame");catch(Exception e)out.println(e);%> <form name="form1" method="post"><table width="350" border="0" align="center" cellpadding="0" cellspacing="2" class="border"> <td height="25" ali
41、gn="center"><strong><font size="5" color="#FFFFFF" >學(xué)生個(gè)人信息</font></strong></td></table><table border="10" align="center" width="500" height="150"> <tr> <Td width="60"
42、> <fontsize="4" color="#FFFFFF">學(xué)號(hào)</font></Td><td width="100"> <fontsize="3" color="#FFFFFF"><%=sId%></font></td> <td width="60"> <fontsize="4" color="#FFFFFF"&
43、gt;</font></td><td width="100"> <fontsize="3" color="#FFFFFF"><%=sName%></font></td> <td width="60"> <fontsize="4" color="#FFFFFF">性別</font></td><td width="100"&
44、gt; <fontsize="3" color="#FFFFFF"><%=Sex%></font></td></tr><tr> <td> <fontsize="4" color="#FFFFFF">院系</font></td><td> <fontsize="3" color="#FFFFFF"><%=dName%><
45、/font></td> <td> <fontsize="4" color="#FFFFFF"> </font></td><td> <fontsize="3" color="#FFFFFF"><%=Mobil%></font></td> <td> <fontsize="4" color="#FFFFFF">地址</font&
46、gt;</td><td> <fontsize="3" color="#FFFFFF"><%=Addr%></font></td> </tr> </table></form>(d)密碼修改舉例:將0826006學(xué)號(hào)的密碼該為:6666其顯示如下:圖1.3 修改密碼修改提交后數(shù)據(jù)庫中的結(jié)果如下,可見密碼已修改圖1.4 數(shù)據(jù)庫中修改后的student表主要代碼:數(shù)據(jù)庫中修改該學(xué)生的密碼的代碼String sPass=(String)request.get
47、Parameter("sPass");Connection conn=null;Statement stmt=null;tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver");conn=DriverManager.getConnection("jdbc:odbc:xk","sa","");String sql2="update student set sPass='"+sPass+"' where sId=&
48、#39;"+name+"'"stmt=conn.createStatement();stmt.executeUpdate(sql2);stmt.close();response.sendRedirect("stuMessModSuc.jsp");function checkBig() if (document.form1.sPass.value="") alert("密碼不能為空!"); document.form1.sPass.focus(); return false; else if (do
49、cument.form1.sPassagn.value="") alert("再次輸入密碼!"); document.form1.sPassagn.focus(); return false; else if (document.form1.sPass.value!=document.form1.sPassagn.value) alert("兩次密碼不同!"); document.form1.sPass.focus(); return false; out.print("修改成功");(e)成績(jī)查詢根據(jù)教授該門課的
50、老師是否提交成績(jī),學(xué)生可以查到自己相應(yīng)課程的成績(jī),其查詢結(jié)果如下: 圖1.5 查詢成績(jī)的頁面主要代碼:tryStatement stmtc=null;ResultSet rsc=null;Connection connc=null;Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");connc=DriverManager.getConnection("jdbc:odbc:xk","sa",""); String sqlc="select * from chooseC
51、ourse where sId='"+name+"'"stmtc=connc.createStatement();rsc=stmtc.executeQuery(sqlc);while(rsc.next()String coId=rsc.getString("coId");float grade=rsc.getFloat("grade");String grademess=null;Statement stmt=null;ResultSet rs=null;Connection conn=null;conn=D
52、riverManager.getConnection("jdbc:odbc:xk","sa",""); String sql="select coName from course where coId='"+coId+"'"stmt=conn.createStatement();rs=stmt.executeQuery(sql);if(rs.next() if(grade>0)out.print(grade); else out.print("未提交")
53、;(f)課程查詢及退選可以通過對(duì)應(yīng)課程后面的退選選項(xiàng)進(jìn)行課程的退選圖1.6 查詢選課情況的頁面主要代碼:<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td align="center" valign="top"> <p class="style8"> <%=nam
54、e%>選課選擇情況</p> <table width="600" border="0" cellpadding="0" cellspacing="1" bgcolor="#000000"> <tr><td width="100" align="center" bgcolor="#FFCCFF"><div align="center"><stron
55、g><font color="blue"> 課程名稱</font></strong></div></td> <td width="60" align="center" bgcolor="#FFCCFF"><div align="center"><strong><font color="blue"> 學(xué)分</font></strong><
56、;/div></td> <td width="60" align="center" bgcolor="#FFCCFF"><div align="center"><strong><font color="blue"> 學(xué)時(shí)</font></strong></div></td> <td width="80" align="center" bg
57、color="#FFCCFF"><div align="center"><strong><font color="blue"> 上課地點(diǎn)</font></strong></div></td> <td width="91" height="30" align="center" bgcolor="#FFCCFF"><div align="cen
58、ter"><strong><font color="blue"> 教師</font></strong></div></td> <td width="139" align="center" bgcolor="#FFCCFF"><strong><font color="blue">操作選項(xiàng)</font></strong></td> </
59、tr> while(rsc.next()String coId=rsc.getString("coId");float grade=rsc.getFloat("grade");String grademess=null;Statement stmt=null;ResultSet rs=null;Connection conn=null;conn=DriverManager.getConnection("jdbc:odbc:xk","sa",""); String sql="sel
60、ect * from course where coId='"+coId+"'"stmt=conn.createStatement();rs=stmt.executeQuery(sql);if(rs.next() String coName=rs.getString(2); String tId=rs.getString(3); float credit=rs.getFloat(4); float period=rs.getFloat(5); String cPlace=rs.getString(7); Connection connt=null;
61、 Statement stmtt=null; ResultSet rst=null; connt=DriverManager.getConnection("jdbc:odbc:xk","sa","");String sqlt="select tName from teacher where tId='"+tId+"'"stmtt=connt.createStatement();rst=stmtt.executeQuery(sqlt);if(rst.next()out.print(
62、rst.getString(1); rsc.close();stmtc.close(); %> </table> </td> </tr></table>(f)選課界面中已通過數(shù)據(jù)庫將所有的課程列出來,學(xué)生可以通過前面的選擇標(biāo)志進(jìn)行選課。圖1.7 選課信息的頁面及選課操作選課后,相應(yīng)數(shù)據(jù)庫中的choosecourse表增加了一行選課記錄主要代碼:<form action="choose.jsp" method="post"><table width="90%" bo
63、rder="0" align="center" cellpadding="0" cellspacing="0"> <tr> <td align="center" valign="top"><br> <br> <table width="800" border="0" cellpadding="0" cellspacing="1" bgco
64、lor="#000000"> <tr> <td width="40" height="30" align="center" bgcolor="#FFCCFF"><div align="center"><strong>選擇</strong></div></td> <td width="100" align="center" bgcolor=&q
65、uot;#FFCCFF"><div align="center"><strong>課程名稱</strong></div></td> <td width="60" align="center" bgcolor="#FFCCFF"><div align="center"><strong>學(xué)分</strong></div></td> <td widt
66、h="60" align="center" bgcolor="#FFCCFF"><div align="center"><strong>學(xué)時(shí)</strong></div></td> <td width="80" align="center" bgcolor="#FFCCFF"><div align="center"><strong>上課
67、地點(diǎn)</strong></div></td> <td width="91" height="30" align="center" bgcolor="#FFCCFF"><div align="center"><strong>教師</strong></div></td> <td width="70" align="center" bgcolor=&
68、quot;#FFCCFF"><strong>剩余可選人數(shù)</strong></td> </tr> <% while(rs.next() String coId=rs.getString(1); String coName=rs.getString(2); String tId=rs.getString(3); float credit=rs.getFloat(4); float period=rs.getFloat(5); String cPlace=rs.getString(6); int cNumAll=rs.getInt(7); int cNum=rs.getInt(8); int num=cNumAll-cNum;%> <tr bgcolor="#FFCCFF" class="tdbg"> <td width="40" height="22" bgcolor="#FFFFFF"><div align="center"> <input type="radio" name="ch
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 專屬2024年商品銷售代表協(xié)議版
- 專業(yè)倉儲(chǔ)及配送服務(wù):2024協(xié)議范本版A版
- 科技驅(qū)動(dòng):公司未來發(fā)展
- 2025年度彩鋼房拆除與綠色建筑認(rèn)證服務(wù)合同范本4篇
- 2025年度影視基地場(chǎng)地借用及拍攝制作合同4篇
- 2025年度科研實(shí)驗(yàn)場(chǎng)地使用權(quán)出讓及研發(fā)支持服務(wù)合同4篇
- 二零二五年度抽沙船租賃及海洋環(huán)境監(jiān)測(cè)協(xié)議3篇
- 2025年度新型工業(yè)園區(qū)土地使用權(quán)交易合同范本4篇
- 2025年智能工廠設(shè)備租賃居間合同示范文本4篇
- 2025年度長(zhǎng)租公寓運(yùn)營管理服務(wù)合同4篇
- 領(lǐng)導(dǎo)溝通的藝術(shù)
- 發(fā)生用藥錯(cuò)誤應(yīng)急預(yù)案
- 南潯至臨安公路(南潯至練市段)公路工程環(huán)境影響報(bào)告
- 綠色貸款培訓(xùn)課件
- 大學(xué)生預(yù)征對(duì)象登記表(樣表)
- 主管部門審核意見三篇
- 初中數(shù)學(xué)校本教材(完整版)
- 父母教育方式對(duì)幼兒社會(huì)性發(fā)展影響的研究
- 新課標(biāo)人教版數(shù)學(xué)三年級(jí)上冊(cè)第八單元《分?jǐn)?shù)的初步認(rèn)識(shí)》教材解讀
- (人教版2019)數(shù)學(xué)必修第一冊(cè) 第三章 函數(shù)的概念與性質(zhì) 復(fù)習(xí)課件
- 重慶市銅梁區(qū)2024屆數(shù)學(xué)八上期末檢測(cè)試題含解析
評(píng)論
0/150
提交評(píng)論