jsp課程設(shè)計(jì)學(xué)生管理系統(tǒng)_第1頁
jsp課程設(shè)計(jì)學(xué)生管理系統(tǒng)_第2頁
jsp課程設(shè)計(jì)學(xué)生管理系統(tǒng)_第3頁
jsp課程設(shè)計(jì)學(xué)生管理系統(tǒng)_第4頁
jsp課程設(shè)計(jì)學(xué)生管理系統(tǒng)_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(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">&nbsp;</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>&nbsp;</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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論