畢業(yè)論文-基于JAVA技術(shù)的學(xué)生選課信息管理系統(tǒng)的設(shè)計(jì)_第1頁
畢業(yè)論文-基于JAVA技術(shù)的學(xué)生選課信息管理系統(tǒng)的設(shè)計(jì)_第2頁
畢業(yè)論文-基于JAVA技術(shù)的學(xué)生選課信息管理系統(tǒng)的設(shè)計(jì)_第3頁
畢業(yè)論文-基于JAVA技術(shù)的學(xué)生選課信息管理系統(tǒng)的設(shè)計(jì)_第4頁
畢業(yè)論文-基于JAVA技術(shù)的學(xué)生選課信息管理系統(tǒng)的設(shè)計(jì)_第5頁
已閱讀5頁,還剩21頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、鍵入文字摘要1本科畢業(yè)論文(設(shè)計(jì)) 基于JAVA技術(shù)的學(xué)生選課信息管理系統(tǒng)的設(shè)計(jì)所 在 學(xué) 院 信息科學(xué)技術(shù)學(xué)院 專 業(yè) 名 稱 計(jì)算機(jī)科學(xué)與技術(shù) 申請(qǐng)學(xué)士學(xué)位所屬學(xué)科 年 級(jí) 學(xué)生姓名、學(xué)號(hào) 指導(dǎo)教師姓名、職稱 完 成 日 期 2016年5月25日 摘要 隨著計(jì)算機(jī)科學(xué)技術(shù)的發(fā)展,數(shù)據(jù)庫技術(shù)在Internet的應(yīng)用越來越泛,為用戶廣提供了更加周到和人性化的服務(wù)。利用計(jì)算機(jī)進(jìn)行學(xué)生信息管理不僅能夠保證準(zhǔn)確無誤,快速輸出,而且還可以對(duì)指定的內(nèi)容進(jìn)行查詢,檢索,查找方便,檢索速度,可靠性高,保密性好。規(guī)范的學(xué)生選課信息管理系統(tǒng),不但減輕了管理人員的工作負(fù)擔(dān),提高了工作效率,避免了不規(guī)范的操作,更有

2、利于院校更好的掌握學(xué)生學(xué)習(xí)信息。本系統(tǒng)以JAVA為開發(fā)語言,結(jié)合SQL server 2008,開發(fā)了與平臺(tái)無關(guān)化的學(xué)生選課信息管理系統(tǒng)。該系統(tǒng)實(shí)現(xiàn)了相關(guān)學(xué)生,教師的信息的添加,查找,刪除,修改等功能,有效完善了學(xué)生選課信息管理工作的質(zhì)量。提高了管理人員的工作效率與質(zhì)量。關(guān)鍵字:數(shù)據(jù)庫,JAVA,學(xué)生選課信息管理系統(tǒng),查詢Abstract2ABSTRACTWith the development of computer science and technology, the application of database technology in Internet is becoming m

3、ore and more extensive, which provides a more thoughtful and humanized service for the users. Using computer student information management can not only ensure the accuracy, fast output, but also on the contents of the specified query, retrieval, convenient search, retrieval speed, high reliability,

4、 confidentiality. Norms of student information management system, not only to reduce the workload of the management staff, improve work efficiency, to avoid the operation of non-standard, more conducive to the institutions of the better grasp of student information. This system uses JAVA as the deve

5、lopment language,combined with SQL Server 2008, developed a platform independent student information management system. The system realizes the related students, teachers information add, search, delete, modify and other functions, effectively improve the quality of student information management. I

6、mprove the management personnels work efficiency and quality. Keywords: Database, JAVA, student information management system,select 泰山學(xué)院本科畢業(yè)論文(設(shè)計(jì))目錄3目錄 TOC o 1-3 h z u HYPERLINK l _Toc28495 目錄 PAGEREF _Toc28495 1 HYPERLINK l _Toc27172 1引言 PAGEREF _Toc27172 4 HYPERLINK l _Toc28743 1.1系統(tǒng)開發(fā)的背景 PAGEREF

7、 _Toc28743 4 HYPERLINK l _Toc1191 1.2研究的目的和意義 PAGEREF _Toc1191 4 HYPERLINK l _Toc29472 2研究現(xiàn)狀及系統(tǒng)開發(fā)必須的理論 PAGEREF _Toc29472 5 HYPERLINK l _Toc1304 2.1本課題在國內(nèi)外的研究現(xiàn)狀 PAGEREF _Toc1304 5 HYPERLINK l _Toc22140 2.2系統(tǒng)開發(fā)必須的理論 PAGEREF _Toc22140 5 HYPERLINK l _Toc11802 2.2.1 Java語言簡介 PAGEREF _Toc11802 5 HYPERLINK

8、 l _Toc2870 2.2.2 SDK與Java平臺(tái)無關(guān)性 PAGEREF _Toc2870 5 HYPERLINK l _Toc30877 2.2.3 Java的特點(diǎn) PAGEREF _Toc30877 6 HYPERLINK l _Toc22458 2.3數(shù)據(jù)庫理論 PAGEREF _Toc22458 6 HYPERLINK l _Toc3132 3學(xué)生選課信息管理系統(tǒng)的需求分析 PAGEREF _Toc3132 7 HYPERLINK l _Toc9055 4學(xué)生選課信息管理系統(tǒng)的功能及結(jié)果分析 PAGEREF _Toc9055 9 HYPERLINK l _Toc5286 4.1功

9、能模塊介紹 PAGEREF _Toc5286 9 HYPERLINK l _Toc26416 4.2學(xué)生選課管理系統(tǒng)功能設(shè)計(jì)實(shí)現(xiàn) PAGEREF _Toc26416 9 HYPERLINK l _Toc23840 4.2.1登錄窗口界面 PAGEREF _Toc23840 10 HYPERLINK l _Toc20628 4.2.2管理員登錄后界面 PAGEREF _Toc20628 10 HYPERLINK l _Toc4803 4.2.3教師登錄后界面 PAGEREF _Toc4803 13 HYPERLINK l _Toc9223 4.2.4學(xué)生登錄后界面 PAGEREF _Toc922

10、3 14 HYPERLINK l _Toc24121 5學(xué)生選課信息管理系統(tǒng)的實(shí)現(xiàn)的相關(guān)代碼 PAGEREF _Toc24121 15 HYPERLINK l _Toc16465 5.1學(xué)生班級(jí)的相關(guān)代碼 PAGEREF _Toc16465 16 HYPERLINK l _Toc26282 5.2學(xué)生登錄選課信息管理系統(tǒng)相關(guān)操作代碼 PAGEREF _Toc26282 19 HYPERLINK l _Toc20911 5.3選課學(xué)生所在系的相關(guān)操作 PAGEREF _Toc20911 24 HYPERLINK l _Toc27298 6總結(jié) PAGEREF _Toc27298 27 HYPER

11、LINK l _Toc30003 參考文獻(xiàn) PAGEREF _Toc30003 27 HYPERLINK l _Toc27380 致謝 PAGEREF _Toc27380 281引言1.1系統(tǒng)開發(fā)的背景 學(xué)生選課信息管理系統(tǒng)是學(xué)校管理的重要工具,是學(xué)校不可或缺的一部分。隨著在校大學(xué)生人數(shù)的不斷增加,學(xué)生的管理也變得越來越復(fù)雜。如果讓個(gè)人去管理文檔,就會(huì)顯得費(fèi)時(shí)費(fèi)力,學(xué)校工作繁雜,資料眾多,人工管理信息的難度也就越來越大,顯然已經(jīng)不能滿足實(shí)際的需要,并且效率低下。并且,傳統(tǒng)的管理方式存在著很多弊端,如:保密性差,不利于查詢,效率低下,維護(hù)困難,難以更新等。然而,本系統(tǒng)針對(duì)以上缺點(diǎn)進(jìn)行設(shè)計(jì),能夠極

12、大地提高學(xué)生信息管理的效率。1.2研究的目的和意義隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)技術(shù)日益成熟,其強(qiáng)大的功能已經(jīng)被人們深刻認(rèn)識(shí),它已進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。目前,學(xué)校學(xué)生管理是教務(wù)管理中極為重要的一個(gè)環(huán)節(jié),它是整個(gè)管理的核心和基礎(chǔ)?,F(xiàn)在,我國的一些院校中學(xué)生信息管理的效率還 不是很高,這樣已經(jīng)不能適應(yīng)時(shí)代的發(fā)展,因?yàn)樗速M(fèi)了許多人力和物力,在信息時(shí)代,這種傳統(tǒng)的管理模式必然被計(jì)算機(jī)為基礎(chǔ)的信息管理所取代。所以,學(xué)生信息系統(tǒng)的設(shè)計(jì)與開發(fā)也是一個(gè)時(shí)代必經(jīng)的階段。使用計(jì)算機(jī)對(duì)學(xué)生信息進(jìn)行管理,具有著手工管理無法比擬的優(yōu)點(diǎn)。例如:檢索速度快,查找方便,可靠性高,存儲(chǔ)容量大,保

13、密性好,壽命長,成本低等。這些優(yōu)點(diǎn)極大地提高了學(xué)生檔案管理的效率。本次設(shè)計(jì),主要實(shí)用于各個(gè)學(xué)校各個(gè)專業(yè),從學(xué)生入學(xué)到學(xué)生畢業(yè),每個(gè)人的在校信息,方便管理員對(duì)學(xué)生信息的添加,修改,刪除等操作。2研究現(xiàn)狀及系統(tǒng)開發(fā)必須的理論2.1本課題在國內(nèi)外的研究現(xiàn)狀學(xué)生選課信息管理是各大學(xué)校的主要日常管理工作之一,涉及到校,系,師,生的諸多方面,隨著教學(xué)體制的逐漸改革,迫切需要開發(fā)一款功能強(qiáng)大,操作簡單,能很好地掌握學(xué)生選課信息的管理系統(tǒng)。在國外高校,與國內(nèi)不同,他們一般具有較大規(guī)模的穩(wěn)定的技術(shù)隊(duì)伍來提供服務(wù)與技術(shù)支持。國內(nèi)高校信息化建設(shè)相對(duì)起步較晚。在數(shù)字校園理論逐步應(yīng)用的過程中,各高校不斷投資購建各種硬件

14、,軟件和網(wǎng)絡(luò):另一方面,不斷開發(fā)實(shí)施了各類應(yīng)用軟件,形成了一定規(guī)模的信息化建設(shè)體系。但是,由于整體信息化程度相對(duì)落后,資金短缺,理論體系不健全等原因,國內(nèi)高校教務(wù)管理系統(tǒng)與國外各大高校學(xué)生選課信息管理系統(tǒng)相比都有一定的差距??v觀目前國內(nèi)研究現(xiàn)狀,在安全性,信息更新等方面有一定的差距和不足。以管理者為主的方式中,信息取舍依賴管理者對(duì)于信息的認(rèn)知與喜好,比較不容易掌握用戶真正的需求,因此無法滿足用戶的真正的需求。因此,學(xué)生選課信息管理系統(tǒng)應(yīng)實(shí)現(xiàn)學(xué)生信息的集中管理,分散操作,信息共享,為進(jìn)一步完善計(jì)算機(jī)學(xué)生選課信息管理系統(tǒng)打下良好的基礎(chǔ)。2.2系統(tǒng)開發(fā)必須的理論2.2.1 Java語言簡介 Java

15、語言最早誕生于1991年,起初被稱為OAK語言,1994年起,開始將OAK技術(shù)應(yīng)用于WEB 上,并且開發(fā)出了Hot Java的第一個(gè)版本。SUN公司1995年正式以Java名字推出。1995年SUN推出Java語言之后,全世界的目光都被這個(gè)神奇的語言所吸引。Java是一種可以撰寫的跨平臺(tái)應(yīng)用軟件的面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,它是由Sun 公司于1995年5月推出的Java程序設(shè)計(jì)語言和Java設(shè)計(jì)平臺(tái)的總稱。 Java是一種簡單的,面向?qū)ο蟮模植际降?,解釋的,健壯的,安全的,結(jié)構(gòu)中立的,可移植的,性能很優(yōu)異多線程的動(dòng)態(tài)語言。2.2.2 SDK與Java平臺(tái)無關(guān)性 JDK是Sun公司推出的,是整個(gè)

16、Java的核心,沒有JDK,就無法安裝或者運(yùn)行Java程序。JDK可以說是Java源代碼,包括了Java運(yùn)行環(huán)境,Java工具和Java基礎(chǔ)類庫。Java EE是sun公司推出的企業(yè)級(jí)應(yīng)用程序版本,簡單說Jdk 是Java的源代碼,Java EE 是Java一種技術(shù)的統(tǒng)稱。 Java應(yīng)用程序的開發(fā)周期包括編輯,編譯和解釋執(zhí)行幾個(gè)部分。Java編譯程序?qū)ava源程序翻譯為JVM可執(zhí)行代碼字節(jié)碼。Java將符號(hào)引用信息保留在字節(jié)碼中,由解釋器在運(yùn)行過程中創(chuàng)立內(nèi)存布局,然后再通過查表來確定一個(gè)方法所在的地址。這樣有效的保證了Java的可移植性和安全性。2.2.3 Java的特點(diǎn)Java具有以下幾個(gè)

17、特點(diǎn):面向?qū)ο?,分布性,簡單性,穩(wěn)定性,可移植性,體系結(jié)構(gòu)中立,安全性,解釋執(zhí)行,動(dòng)態(tài)性,多線程高性能等。(1)面向?qū)ο?Java語言的設(shè)計(jì)集中于對(duì)象及其接口,它提供了簡單的類機(jī)制以及動(dòng)態(tài)的接口模型。對(duì)象中封裝了狀態(tài)變量以及相應(yīng)的方法,實(shí)現(xiàn)了模塊化和信息的隱藏。類則提供了對(duì)象的原型,并且通過繼承機(jī)制,子類可以使用父類提供的方法,實(shí)現(xiàn)了代碼的復(fù)用。(2)分布性Java是面向網(wǎng)絡(luò)的語言。通過它提供的類庫可以處理TCP/IP協(xié)議,用戶可以通過URL地址在網(wǎng)絡(luò)上很方便地訪問其他對(duì)象。(3)簡單性Java語言是一種面向?qū)ο蟮恼Z言,他通過提供最基本的方法來完成指定的任務(wù),只需理解一些基本的概念,就可以編寫

18、出適合于各種情況的應(yīng)用程序。Java略去了運(yùn)算符重載,多重繼承等模糊的概念,并且通過實(shí)現(xiàn)自動(dòng)垃圾收集,大大簡化了程序設(shè)計(jì)者的內(nèi)存管理工作。(4)動(dòng)態(tài)性Java的設(shè)計(jì)使他更適合不斷發(fā)展的環(huán)境。在類庫中可以自由地加入新的方法和實(shí)例變量而不會(huì)影響用戶程序的執(zhí)行。并且Java通過接口來支持多重繼承,使其比嚴(yán)格的類繼承更具有靈活的方式和擴(kuò)展性。(5)多線程 多線程機(jī)制使應(yīng)用程序能夠并發(fā)執(zhí)行,而且同步機(jī)制保證了對(duì)共享數(shù)據(jù)的正確操作。通過使用多線程,程序設(shè)計(jì)者可以分別使用不同的線程完成特定的行為,而不需要采用全局的事件循環(huán)機(jī)制,這樣就很容易的實(shí)現(xiàn)了網(wǎng)絡(luò)上的實(shí)時(shí)交互行為。2.3數(shù)據(jù)庫理論(1)關(guān)系數(shù)據(jù)庫的模型

19、的數(shù)據(jù)結(jié)構(gòu) 關(guān)系數(shù)據(jù)模型中數(shù)據(jù)的邏輯結(jié)構(gòu)是一張二維表,他有行和列組成。 關(guān)系:一個(gè)關(guān)系對(duì)應(yīng)通常所說的一張表 元組:表中的一行 屬性:表中的一列 主碼:表中的某一個(gè)屬性,通過它可以唯一的標(biāo)識(shí)一個(gè)元組 域:屬性的取值范圍 關(guān)系模式:對(duì)關(guān)系的描述一般為:關(guān)系名(屬性1,屬性2,屬性3 屬性n) 關(guān)系數(shù)據(jù)模型的數(shù)據(jù)操作 關(guān)系數(shù)據(jù)模型中常用的數(shù)據(jù)操作包括:選擇,鏈接,投影,增加,刪除,修改,查詢,并,交,除。(2) 關(guān)系數(shù)據(jù)模型的數(shù)據(jù)完整性約束 關(guān)系數(shù)據(jù)模型允許定義3類數(shù)據(jù)完整性約束:實(shí)體完整性,參照完整性,用戶定義完整性。實(shí)體完整性,參照完整性是關(guān)系數(shù)據(jù)模型必須滿足的完整性約束條件,由關(guān)系系統(tǒng)自動(dòng)支持

20、。用戶定義完整性是應(yīng)用領(lǐng)域需要遵循的完整條件,即用戶自己定義的約束條件。 3學(xué)生選課信息管理系統(tǒng)的需求分析需求分析是軟件設(shè)計(jì)的第一步,是成功實(shí)現(xiàn)整個(gè)軟件系統(tǒng)的基礎(chǔ)。認(rèn)真做好需求分析,才能真正的了解客戶需求,明確開發(fā)的目標(biāo),軟件的開發(fā)是建立在需求分析的基礎(chǔ)上。以下是學(xué)生選課信息管理系統(tǒng)的需求分析圖解:3.1.1作為管理員登錄學(xué)生選課信息管理系統(tǒng): 管理員具有以下權(quán)限:管理員管理,系別管理,班級(jí)管理,科目管理,教師管理,學(xué)生管理,日志管理等權(quán)限。如圖3-1所示:圖3-1 管理員登錄系統(tǒng)權(quán)限3.1.2作為教師,登錄學(xué)生選課信息管理系統(tǒng)教師登入學(xué)生選課信息管理系統(tǒng)后權(quán)限包括:修改密碼,查看自己的認(rèn)可信

21、息,成績管理,查看每門課的選課情況。如圖3-2所示:圖3-2 教師登入系統(tǒng)權(quán)限3.1.3作為學(xué)生,登錄學(xué)生選課信息管理系統(tǒng)。學(xué)生登錄選課信息管理系統(tǒng)后權(quán)限包括:修改密碼,查看可選課信息,進(jìn)行課程選擇,查看自己的成績。如圖3-3所示:圖3-3 學(xué)生登入系統(tǒng)權(quán)限4學(xué)生選課信息管理系統(tǒng)的功能及結(jié)果分析4.1功能模塊介紹 學(xué)生選課信息管理系統(tǒng)相關(guān)功能實(shí)現(xiàn)的相關(guān)類包,主要包括:實(shí)體類包,數(shù)據(jù)訪問接口包,數(shù)據(jù)訪問實(shí)現(xiàn)類包,文件IO包,業(yè)務(wù)邏輯接口包,業(yè)務(wù)邏輯實(shí)現(xiàn)類包,圖片資源包,工具類包,視圖包等。如圖4-1所示。圖4-1 選課管理系統(tǒng)類包4.2學(xué)生選課信息管理系統(tǒng)功能設(shè)計(jì)實(shí)現(xiàn)4.2.1登錄窗口界面學(xué)生選

22、課信息管理系統(tǒng)的登錄界面,主要包括:用戶名,密碼,登錄,重置按鈕等。界面如圖4-2所示。圖4-2 用戶登錄界面4.2.2管理員登錄后界面 管理員輸入正確的用戶名,密碼后登入學(xué)生選課信息管理系統(tǒng)后的界面如圖4-3所示。圖4-3 管理員登錄后界面(1)管理員輸入正確的用戶名和密碼,可登錄系統(tǒng),管理員可以對(duì)管理員,系部,班級(jí),教師,學(xué)生,課程,日志等進(jìn)行操作。相關(guān)界面如圖4-4所示圖4-4 管理員相關(guān)權(quán)限(2)下面以管理員管理為例進(jìn)行解釋說明。管理員可以對(duì)其他管理員進(jìn)行載入,添加,保存,刪除等操作。相關(guān)圖片如圖4-5所示。圖4-5管理員信息圖(3)增加用戶時(shí)的驗(yàn)證。管理員可以輸入新的用戶信息,用戶信

23、息包括:用戶的編號(hào),賬號(hào),密碼。用戶名,賬號(hào),密碼等均不能為空。如圖4-6所示。圖4-6 新增管理員(4)管理員的刪除。管理員有權(quán)對(duì)用戶進(jìn)行刪除操作,選擇要?jiǎng)h除的對(duì)象,點(diǎn)擊刪除按鈕,彈出提示框,點(diǎn)擊確定,即可刪除管理員。相關(guān)界面如圖4-7所示圖4-7 刪除用戶(5)管理員對(duì)系部,班級(jí),教師,學(xué)生,課程,日志等的操作和管理員對(duì)其他管理員的操作相似,不再一一解釋說明。4.2.3教師登錄后界面(1)教師輸入正確的用戶名和密碼,可登錄系統(tǒng)??梢赃M(jìn)行修改密碼,查看自己的認(rèn)可信息,管理成績,查看每門課的選課信息等操作。相關(guān)界面如圖4-8所示。圖4-8教師登入界面(2)選課信息導(dǎo)出excel。教師登入后可以

24、導(dǎo)出相關(guān)學(xué)生的信息。導(dǎo)出的學(xué)生信息包括:學(xué)號(hào),姓名,性別,年齡,班級(jí),系部等選課學(xué)生相關(guān)信息。界面如圖4-9所示。圖4-9 導(dǎo)出學(xué)生信息4.2.4學(xué)生登錄后界面(1)學(xué)生輸入正確的用戶名和密碼,可登錄系統(tǒng)??梢赃M(jìn)行修改密碼,查看可選課程信息,進(jìn)行選課,查看每門課的成績等操作。相關(guān)界面如圖4-10所示。圖4-10學(xué)生選課(2)學(xué)生登入選課系統(tǒng)后,可以進(jìn)行相應(yīng)的課程選擇,輸入課程編號(hào),點(diǎn)擊選課按鈕,若選課人數(shù)未超過限定人數(shù),則提示選課成功,否則,提示該課程已經(jīng)被選。相關(guān)操作界面如圖4-11所示。圖4-11 按課程編碼選課5學(xué)生選課信息管理系統(tǒng)的實(shí)現(xiàn)的相關(guān)代碼5.1學(xué)生班級(jí)的相關(guān)代碼(1)添加班級(jí)p

25、ublic class SysClassDaoImpl implements SysClassDao public int addClassBean (ClassBean classbean) Connection conn = null; PreparedStatement pstmt = null; int row = 0; String sql = insert into t_class values(?); try conn = DBConnection.getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setStri

26、ng(1, classbean.getClassname(); row = pstmt.executeUpdate(); catch (Exception e) e.printStackTrace(); finally DBConnection.closeStatement(pstmt); DBConnection.closeConn(conn); return row; (2)刪除班級(jí) public int deleteClassBean(int id) DBConnection db = new DBConnection(); Connection conn = null; Prepare

27、dStatement pstmt = null; int row = 0; String sql = delete t_class where id=?; try conn = db.getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setInt(1, id); row = pstmt.executeUpdate(); catch (Exception e) e.printStackTrace(); finally DBConnection.closeStatement(pstmt); DBConnection.closeCo

28、nn(conn); return row; (3)修改班級(jí)的主要代碼: String sql = update t_class set classname=? where id=?; try conn = DBConnection.getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setString(1, classbean.getClassname(); pstmt.setInt(2, classbean.getId(); row = pstmt.executeUpdate(); catch (Exception e) e.

29、printStackTrace(); finally (4)根據(jù)編號(hào)查找學(xué)生所在班級(jí)的相關(guān)代碼 public ClassBean findClassBeanById(int id) ClassBean classbean = null; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; String sql = select * from t_class where id=?; try conn = DBConnection.getConnection(); pstmt = conn.pre

30、pareStatement(sql); pstmt.setInt(1, id); rs = pstmt.executeQuery(); if (rs.next() classbean = new ClassBean(); classbean.setId(rs.getInt(1); classbean.setClassname(rs.getString(2); catch (Exception e) e.printStackTrace(); finally DBConnection.closeStatement(pstmt); DBConnection.closeConn(conn); retu

31、rn classbean; (5)根據(jù)名稱查找學(xué)生所在班級(jí)的相關(guān)代碼: String sql = select * from t_class where classname=?; try conn = DBConnection.getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setString(1, classname); rs = pstmt.executeQuery(); if (rs.next() classbean = new ClassBean(); classbean.setId(rs.getInt(1); cl

32、assbean.setClassname(rs.getString(2); catch (Exception e) e.printStackTrace(); finally 5.2學(xué)生登錄選課信息管理系統(tǒng)相關(guān)操作代碼1.登錄的相關(guān)主要代碼: String sql = select * from t_student where sid=? and spassword=?; try conn = DBConnection.getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setInt(1, sid); pstmt.setStrin

33、g(2, spassword); rs = pstmt.executeQuery(); if (rs.next() stu = new Student(); stu.setSid(rs.getInt(1); stu.setSpassword(rs.getString(2); stu.setSname(rs.getString(3); stu.setSex(rs.getString(4); stu.setSage(rs.getInt(5); stu.setSclass(rs.getInt(6); stu.setSDepartment(rs.getInt(7); catch (Exception

34、e) e.printStackTrace(); finally 2.修改個(gè)人密碼 public int updatePassword(int sid, String spassword) Connection conn = null; PreparedStatement pstmt = null; int row = 0; String sql = update t_student set spassword=? where sid=?; try conn = DBConnection.getConnection(); pstmt = conn.prepareStatement(sql); p

35、stmt.setString(1, spassword); pstmt.setInt(2, sid); row = pstmt.executeUpdate(); catch (Exception e) e.printStackTrace(); finally DBConnection.closeStatement(pstmt); DBConnection.closeConn(conn); return row; 3.選擇課程,添加選課信息(學(xué)號(hào),課程號(hào)),增加選課人數(shù)(調(diào)用存儲(chǔ)過程) public int selectCourse(SelectCourse sc) Connection con

36、n = null; CallableStatement cstmt = null; int row = 0; String sql = insert into t_selectcourse(sid,cid) values(?,?); try conn = DBConnection.getConnection(); cstmt = conn.prepareCall(sql); cstmt.setInt(1, sc.getSid(); cstmt.setInt(2, sc.getCid(); row = cstmt.executeUpdate(); catch (Exception e) e.pr

37、intStackTrace(); finally DBConnection.closeStatement(cstmt); DBConnection.closeConn(conn); return row; 5.查找所有課程 public List findAllCourse() List list = new ArrayList(); Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; String sql= select c.id,c.coursename,c.credit,c.cTime,

38、c.caddress,t.Tname,c.Limitnumber,c.Truenumber from t_course c inner join t_teacher t on t.tid=c.Teacher; try conn = DBConnection.getConnection(); pstmt = conn.prepareStatement(sql); rs = pstmt.executeQuery(); while (rs.next() Course couv = new Course(); couv.setId(rs.getInt(1); couv.setCoursename(rs

39、.getString(2); couv.setCredit(rs.getInt(3); couv.setCTime(rs.getString(4); couv.setCaddress(rs.getString(5); couv.setTname(rs.getString(6); couv.setLimitnumber(rs.getInt(7); couv.setTruenumber(rs.getInt(8); list.add(couv); catch (Exception e) e.printStackTrace(); finally DBConnection.closeStatement(

40、pstmt); DBConnection.closeConn(conn); return list; 6.根據(jù)學(xué)號(hào)查詢已選課程成績 public List findScoreById(int sid) List list = new ArrayList(); Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; String sql = select t.id,c.classname,t.score n + from t_selectcourse t inner join t_class c o

41、n t.cid=c.id where sid=?; try conn = DBConnection.getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setInt(1, sid); rs = pstmt.executeQuery(); while (rs.next() SelectCourse scouv = new SelectCourse(); scouv.setId(rs.getInt(1); scouv.setCname(rs.getString(2); scouv.setCid(rs.getInt(3); scouv

42、.setScore(rs.getInt(3); list.add(scouv); catch (Exception e) e.printStackTrace(); finally DBConnection.closeStatement(pstmt); DBConnection.closeConn(conn); return list; Override public boolean hadSelect(int sid, int cid) boolean result = false; Connection conn = null; PreparedStatement pstmt = null;

43、 ResultSet rs = null; String sql = select * from t_selectcourse where sid=? and cid=?; try conn = DBConnection.getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setInt(1, sid); pstmt.setInt(2, cid); rs = pstmt.executeQuery(); if (rs.next() result = true; catch (Exception e) e.printStackTrac

44、e(); finally DBConnection.closeStatement(pstmt); DBConnection.closeConn(conn); return result;7.教師,管理員登錄系統(tǒng)的操作代碼與學(xué)生登錄系統(tǒng)的代碼類似,此處不再一一列舉。5.3選課學(xué)生所在系的相關(guān)操作 (1)添加系 public class SysDepartmentDaoImpl implements SysDepartmentDao public int addDepartment(Department dep) Connection conn = null; PreparedStatement

45、pstmt = null; int row = 0; String sql = insert into t_department values(?); try conn = DBConnection.getConnection(); /1.創(chuàng)建連接 pstmt = conn.prepareStatement(sql); /2.創(chuàng)建執(zhí)行對(duì)象 pstmt.setString(1, dep.getDepname(); /3.給參數(shù)賦值 row = pstmt.executeUpdate(); /4.執(zhí)行 catch (Exception e) e.printStackTrace(); finally

46、 DBConnection.closeStatement(pstmt); DBConnection.closeConn(conn); return row; (2)刪除學(xué)生所在系的相關(guān)代碼: public int deleteDepartment(int id) Connection conn = null; PreparedStatement pstmt = null; int row = 0; String sql = delete t_department where id=?; try conn = DBConnection.getConnection(); /1.創(chuàng)建連接 pstmt

47、 = conn.prepareStatement(sql); /2.創(chuàng)建執(zhí)行對(duì)象 pstmt.setInt(1, id); /3.給參數(shù)賦值 row = pstmt.executeUpdate(); /4.執(zhí)行 catch (Exception e) e.printStackTrace(); finally DBConnection.closeStatement(pstmt); DBConnection.closeConn(conn); return row; (3)更新學(xué)生所在系的名字的相關(guān)實(shí)現(xiàn)代碼: String sql = update t_department set depname=

48、? where id=?; try conn = DBConnection.getConnection(); /創(chuàng)建連接 pstmt = conn.prepareStatement(sql); /創(chuàng)建執(zhí)行對(duì)象 pstmt.setString(1, dep.getDepname(); /給參數(shù)賦值 pstmt.setInt(2, dep.getId(); row = pstmt.executeUpdate(); /執(zhí)行 catch (Exception e) e.printStackTrace(); finally DBConnection.closeStatement(pstmt); DBCo

49、nnection.closeConn(conn); return row; 5.根據(jù)名稱查找學(xué)生所在系: public Department findDepByName(String depname) Department dep = null; Connection conn = null; PreparedStatement pstmt = null; ResultSet rs = null; /查詢返回結(jié)果集 String sql = select * from t_department where depname=?; try conn = DBConnection.getConnection(); /創(chuàng)建連接 pstmt = conn.prepareStatement(sql); /創(chuàng)建連接對(duì)象 pstmt.setString(1, depname); /給參數(shù)賦值 rs = pstmt.executeQuery(); /執(zhí)行 /遍歷 Rs if (rs.next(

溫馨提示

  • 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)論