數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)學(xué)生信息管理系統(tǒng)(java-sql)-畢業(yè)論文_第1頁
數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)學(xué)生信息管理系統(tǒng)(java-sql)-畢業(yè)論文_第2頁
數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)學(xué)生信息管理系統(tǒng)(java-sql)-畢業(yè)論文_第3頁
數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)學(xué)生信息管理系統(tǒng)(java-sql)-畢業(yè)論文_第4頁
數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)學(xué)生信息管理系統(tǒng)(java-sql)-畢業(yè)論文_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

PAGE本科生課程設(shè)計(jì)課程名稱數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)課程編號(hào)學(xué)號(hào)學(xué)生姓名所在專業(yè)所在班級(jí)指導(dǎo)教師成績(jī)教師簽字年月日課程設(shè)計(jì)時(shí)間:年月日至年月日目錄目錄設(shè)計(jì)總說明 I1、需求分析 32、概念結(jié)構(gòu)設(shè)計(jì) 33、邏輯結(jié)構(gòu)設(shè)計(jì) 54、物理結(jié)構(gòu)設(shè)計(jì) 95、系統(tǒng)實(shí)現(xiàn) 135.1前臺(tái)界面 135.2后臺(tái)實(shí)現(xiàn) 166、優(yōu)缺點(diǎn)及自我評(píng)價(jià) 187、參考文獻(xiàn) 18設(shè)計(jì)總說明PAGEI設(shè)計(jì)總說明系統(tǒng)開發(fā)目的學(xué)生信息管理系統(tǒng)是學(xué)校管理的重要工具,是學(xué)校不可或缺的部分。隨著在校大學(xué)生人數(shù)的不斷增加,教務(wù)系統(tǒng)的數(shù)量也不斷的上漲。學(xué)校工作繁雜、資料眾多,人工管理信息的難度也越來越大,顯然是不能滿足實(shí)際的需要,效率也是很低的。并且這種傳統(tǒng)的方式存在著很多的弊端,如:保密性差、查詢不便、效率低,很難維護(hù)和更新等。然而,本系統(tǒng)針對(duì)以上缺點(diǎn)能夠極大地提高學(xué)生信息管理的效率,也是科學(xué)化、正規(guī)化的管理,與世界接軌的重要條件。所以如何自動(dòng)高效地管理信息是這些年來許多人所研究的。開發(fā)內(nèi)容 用數(shù)據(jù)庫和Java相關(guān)技術(shù)開發(fā)一個(gè)學(xué)生信息管理系統(tǒng)開發(fā)要求能夠?qū)W(xué)生信息進(jìn)行簡(jiǎn)單的添加,刪除和查詢開發(fā)環(huán)境及工具1、操作系統(tǒng):Windows72、數(shù)據(jù)庫軟件:SQLServer20083、Java開發(fā)工具:Eclipse系統(tǒng)功能簡(jiǎn)介一、學(xué)生管理添加學(xué)生信息??梢园凑?qǐng)D形的界面的顯示依次輸入新學(xué)生的“學(xué)號(hào)”,“姓名”,“性別”,“班級(jí)”,“學(xué)院”,“籍貫”。完成新紀(jì)錄的添加。刪除學(xué)生記錄??梢愿鶕?jù)輸入的“學(xué)號(hào)”或者”姓名”進(jìn)行刪除的操作。二、學(xué)生查詢3、查詢學(xué)生信息。用戶可以選擇通過“按姓名查詢”,也可以選擇“按學(xué)號(hào)查詢”查詢學(xué)生信息,查詢到的信息會(huì)在窗口中顯示出來。文件退出開發(fā)分工情況本系統(tǒng)由本人獨(dú)立完成廣東海洋大學(xué)本科生課程設(shè)計(jì)數(shù)據(jù)庫原理及應(yīng)用課程設(shè)計(jì)報(bào)告1、需求分析在一些學(xué)校等機(jī)構(gòu),隨著學(xué)生數(shù)量的不斷增加,學(xué)生的信息不斷增多,人工管理信息的難度也越來越大。而且效率也是很低的。所以如何自動(dòng)高效地管理信息是這些年來許多人所研究的。隨著這些年電腦計(jì)算機(jī)的速度質(zhì)的提高,成本的下降,IT互聯(lián)網(wǎng)大眾趨勢(shì)的發(fā)展。我們使用電腦高效率處理數(shù)據(jù)信息成為可能。學(xué)生信息管理系統(tǒng)的出現(xiàn),正是管理人員與信息數(shù)據(jù),計(jì)算機(jī)進(jìn)入互動(dòng)時(shí)代的體現(xiàn)。友好的人機(jī)交互模式,清晰簡(jiǎn)明的圖形界面,高效安全的操作使得我們對(duì)成千上萬的信息的管理得心應(yīng)手。學(xué)生信息管理系統(tǒng),以SQL數(shù)據(jù)庫作為后臺(tái)信息存儲(chǔ),Java作為前臺(tái)系統(tǒng)的語言。提供了對(duì)學(xué)生信息添加,查詢,刪除等功能。實(shí)現(xiàn)了最基本的信息管理。2、概念結(jié)構(gòu)設(shè)計(jì)教師ID教師ID課程號(hào)教師課程號(hào)教師教師姓名教師姓名課程名稱課程登錄密碼課程名稱課程登錄密碼教師ID教師ID學(xué)號(hào)學(xué)號(hào)課程號(hào)成績(jī)課程號(hào)成績(jī)姓名成績(jī)姓名成績(jī)學(xué)號(hào)學(xué)號(hào)管理員ID性別學(xué)生管理員ID性別學(xué)生管理員籍貫管理員籍貫登錄密碼登錄密碼班級(jí)號(hào)班級(jí)號(hào)班級(jí)籍貫班級(jí)籍貫登錄密碼登錄密碼總?cè)藬?shù)班級(jí)號(hào)班級(jí)名稱總?cè)藬?shù)班級(jí)號(hào)班級(jí)名稱3、邏輯結(jié)構(gòu)設(shè)計(jì)StudentInfo表:字段名類型空值約束條件學(xué)號(hào)Char(10)notnull主鍵姓名varchar(10)出生日期datetime籍貫varchar(50)

系號(hào)char(2)notnull

外鍵班級(jí)號(hào)char(6)notnull外鍵4、物理結(jié)構(gòu)設(shè)計(jì)createtableStudentInfo(學(xué)號(hào)char(10)primarykey,姓名varchar(10),性別char(2),出生日期datetime,籍貫varchar(50),系號(hào)char(2),班級(jí)號(hào)char(6),)系統(tǒng)實(shí)現(xiàn)5.1前臺(tái)界面:5.2后臺(tái)代碼實(shí)現(xiàn):見附錄6、優(yōu)缺點(diǎn)及自我評(píng)價(jià)由于時(shí)間倉促,本系統(tǒng)還有許多功能沒有實(shí)現(xiàn),也有一些漏洞。同時(shí),也因?yàn)樽约赫莆盏闹R(shí)不夠扎實(shí),不夠全面,所以,這個(gè)學(xué)生信息管理系統(tǒng)只實(shí)現(xiàn)了一些簡(jiǎn)單的基本功能,其他功能還有待完善。本次課程設(shè)計(jì)自我感覺很辛苦,但是受益匪淺。因?yàn)閿?shù)據(jù)庫,Java這兩門課的知識(shí)學(xué)的不夠扎實(shí),在設(shè)計(jì)過程中碰到了很多問題,剛開始要設(shè)計(jì)的時(shí)候,還真不知道從哪里下手,通過在百度、書本、同學(xué)的幫助下有些得到了解決,讓我學(xué)會(huì)了好多書本上沒有的東西,通過本次課程設(shè)計(jì),逐漸能將課本上的知識(shí)應(yīng)用到實(shí)際操作中,但是我發(fā)現(xiàn)我現(xiàn)在學(xué)到的知識(shí)還遠(yuǎn)遠(yuǎn)不夠,要想做出一個(gè)功能比較全面,界面比較漂亮的系統(tǒng)還需要更多相關(guān)的知識(shí)。所以,在接下來的日子里,我還有待加強(qiáng)學(xué)習(xí)。在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的很多不足之處,對(duì)以前所學(xué)過的知識(shí)理解得不夠深刻,掌握得不夠牢固,導(dǎo)致設(shè)計(jì)系統(tǒng)的時(shí)候頻頻出現(xiàn)錯(cuò)誤。通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合很重要,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正達(dá)到學(xué)以致用的目的,從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。7、參考文獻(xiàn)王珊,薩師煊.《數(shù)據(jù)庫系統(tǒng)概論》[M],高等教育出版社,2014.耿祥義,張躍平.《Java2實(shí)用教程》[M],清華大學(xué)出版社,2013.附錄附錄添加學(xué)生面板類的代碼packagejieweixiao;//導(dǎo)入系統(tǒng)的類包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//創(chuàng)建“添加學(xué)生面板”類publicclassAddStudentPanelextendsJPanelimplementsActionListener{ //聲明連接數(shù)據(jù)庫對(duì)象 Connectioncon; //聲明SQL語句對(duì)象 PreparedStatementst; //創(chuàng)建組件對(duì)象:標(biāo)簽、文本行、單選 JLabeljLabel1=newJLabel("學(xué)號(hào)"); JLabeljLabel2=newJLabel("姓名"); JLabeljLabel3=newJLabel("性別"); JLabeljLabel4=newJLabel("出生日期"); JLabeljLabel5=newJLabel("籍貫"); JLabeljLabel6=newJLabel("注意:出生日期格式為YYYY-MM-DD"); JTextFieldjTextField1=newJTextField(); JTextFieldjTextField2=newJTextField(); JTextFieldjTextField3=newJTextField(); JTextFieldjTextField4=newJTextField(); JRadioButtonjRadioButton1=newJRadioButton("男"); JRadioButtonjRadioButton2=newJRadioButton("女"); ButtonGroupbuttonGroup1=newButtonGroup(); JButtonjButton1=newJButton("存入數(shù)據(jù)庫"); //構(gòu)造方法 publicAddStudentPanel() { try{ //調(diào)用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //界面初始化方法 privatevoidjbInit()throwsException { //連接數(shù)據(jù)庫 //con=newConnection();//創(chuàng)建一個(gè)statement對(duì)象來將SQL語句發(fā)送到數(shù)據(jù)庫 Stringurl="jdbc:sqlserver://localhost:1433;DatabaseName=StudentManager"; Stringdriver="com.microsoft.sqlserver.jdbc.SQLServerDriver"; Class.forName(driver);//加載驅(qū)動(dòng)! con=DriverManager.getConnection(url,"sa","xjw1123");//連接數(shù)據(jù)庫! Stringsql="insertintoStudentInfo"+"values(?,?,?,?,?,?,?)"; st=con.prepareStatement(sql); //框架的布局 this.setLayout(null); //設(shè)置各組件的大小 jLabel1.setBounds(newRectangle(21,17,64,24)); jLabel2.setBounds(newRectangle(21,51,53,22)); jLabel3.setBounds(newRectangle(21,86,61,27)); jLabel4.setBounds(newRectangle(21,122,59,25)); jLabel5.setBounds(newRectangle(21,188,54,24)); jLabel6.setBounds(newRectangle(102,153,219,27)); jTextField1.setBounds(newRectangle(102,10,200,30)); jTextField2.setBounds(newRectangle(102,49,200,30)); jTextField3.setBounds(newRectangle(102,117,200,33)); jTextField4.setBounds(newRectangle(102,183,200,29)); jRadioButton1.setBounds(newRectangle(102,83,65,30)); jRadioButton2.setBounds(newRectangle(190,85,85,30)); jButton1.setBounds(newRectangle(103,217,180,30)); //設(shè)置單選按鈕被選中 jRadioButton1.setSelected(true); //添加按鈕動(dòng)作事件 jButton1.addActionListener(this); //添加組件到面板 this.add(jTextField1); this.add(jLabel1); this.add(jLabel2); this.add(jTextField2); this.add(jRadioButton1); this.add(jRadioButton2); this.add(jLabel3); this.add(jLabel4); this.add(jTextField3); this.add(jLabel6); this.add(jTextField4); this.add(jLabel5); this.add(jButton1); buttonGroup1.add(jRadioButton1); buttonGroup1.add(jRadioButton2); } //點(diǎn)擊按鈕事件//事件相應(yīng)器當(dāng)你定義的事件捕捉以后就會(huì)執(zhí)行這個(gè)里面的代碼 publicvoidactionPerformed(ActionEvente) { //獲取用戶輸入的信息 Stringxuehao=jTextField1.getText(); Stringxingming=jTextField2.getText(); Stringxingbie=""; if(jRadioButton1.isSelected()) xingbie+="男"; if(jRadioButton2.isSelected()) xingbie+="女"; StringdateString=jTextField3.getText(); Stringjiguan=jTextField4.getText(); try{ //設(shè)置日期格式 //st.execute("setdateformatymd"); //利用st對(duì)象執(zhí)行SQL語句,進(jìn)行插入操作 st.setString(1,xuehao); st.setString(2,xingming); st.setString(3,xingbie); st.setString(4,dateString); st.setString(5,jiguan); st.setString(6,""); st.setString(7,""); st.executeUpdate(); //清空文本行的內(nèi)容 jTextField1.setText(""); jTextField2.setText(""); jTextField3.setText(""); jTextField4.setText(""); //利用消息對(duì)話框提示刪除操作成功 JOptionPane.showMessageDialog(this,"插入成功!"); } catch(Exceptionex){ //利用消息對(duì)話框提示不能插入,并顯示異常的信息 JOptionPane.showMessageDialog(this,ex); //ex.printStackTrace(); } }}刪除學(xué)生面板類的代碼packagejieweixiao;//導(dǎo)入系統(tǒng)的類包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//創(chuàng)建“刪除學(xué)生面板”類publicclassDeleteStudentPanelextendsJPanelimplementsActionListener{ //聲明連接數(shù)據(jù)庫對(duì)象 Connectioncon; //聲明SQL語句對(duì)象 Statementst; //創(chuàng)建組件對(duì)象 JLabeljLabel1=newJLabel("請(qǐng)輸入待刪除的學(xué)生的學(xué)號(hào):"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("刪除"); //構(gòu)造方法 publicDeleteStudentPanel() { try{ //調(diào)用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //界面初始化方法 privatevoidjbInit()throwsException { //連接數(shù)據(jù)庫 //con=DBConnect.getConn(); Stringurl="jdbc:sqlserver://localhost:1433;DatabaseName=StudentManager"; Stringdriver="com.microsoft.sqlserver.jdbc.SQLServerDriver"; Class.forName(driver);//加載驅(qū)動(dòng)! con=DriverManager.getConnection(url,"sa","xjw1123");//連接數(shù)據(jù)庫! st=con.createStatement(); //框架的布局 this.setLayout(null); //設(shè)置各組件的大小 jLabel1.setFont(newjava.awt.Font("宋體",Font.BOLD,14)); jLabel1.setBounds(newRectangle(70,20,200,30)); jTextField1.setBounds(newRectangle(70,80,207,41)); jButton1.setBounds(newRectangle(70,175,205,36)); //添加按鈕動(dòng)作事件 jButton1.addActionListener(this); //添加組件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jButton1); } //點(diǎn)擊按鈕事件 publicvoidactionPerformed(ActionEvente) { //獲取用戶輸入的學(xué)號(hào) Stringxuehao=jTextField1.getText(); //要求用戶確認(rèn)刪除 if(JOptionPane.showConfirmDialog(this,"確認(rèn)要?jiǎng)h除嗎?")==JOptionPane.YES_OPTION) { try{ //利用st對(duì)象執(zhí)行SQL刪除操作 st.executeUpdate("deletefromStudentInfowhere學(xué)號(hào)='"+xuehao+"'"); //利用消息對(duì)話框提示刪除操作成功 JOptionPane.showMessageDialog(this,"刪除操作成功!"); //清空輸入學(xué)號(hào)的文本行 jTextField1.setText(""); } catch(Exceptionex){ //利用消息對(duì)話框提示不能刪除 JOptionPane.showMessageDialog(this,"刪除操作執(zhí)行失敗!"); } } }}按姓名查詢學(xué)生面板類的代碼packagejieweixiao;importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//創(chuàng)建“添加學(xué)生面板”類publicclassInquireOnNamePanelextendsJPanelimplementsActionListener{ //聲明連接數(shù)據(jù)庫對(duì)象 Connectioncon; //聲明SQL語句對(duì)象 Statementst; //創(chuàng)建組件對(duì)象:標(biāo)簽、文本行、單選 JLabeljLabel1=newJLabel("請(qǐng)輸入待查詢的學(xué)生的姓名:"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("按姓名查詢"); JScrollPanejScrollPane1=newJScrollPane(); JTextAreajTextArea1=newJTextArea(); //構(gòu)造方法 publicInquireOnNamePanel() { try{ //調(diào)用初始化方法 jbInit(); } catch(Exceptionexception){ //exception.printStackTrace(); } } //面板初始化方法 privatevoidjbInit()throwsException { //連接數(shù)據(jù)庫 //con=DBConnect.getConn(); Stringurl="jdbc:sqlserver://localhost:1433;DatabaseName=StudentManager"; Stringdriver="com.microsoft.sqlserver.jdbc.SQLServerDriver"; Class.forName(driver);//加載驅(qū)動(dòng)! con=DriverManager.getConnection(url,"sa","xjw1123");//連接數(shù)據(jù)庫! st=con.createStatement(); //框架的布局 this.setLayout(null); //設(shè)置各組件的大小 jLabel1.setFont(newjava.awt.Font("宋體",Font.BOLD,14)); jLabel1.setBounds(newRectangle(80,10,200,34)); jTextField1.setBounds(newRectangle(80,50,200,30)); jButton1.setBounds(newRectangle(100,90,160,30)); jScrollPane1.setBounds(newRectangle(29,125,308,130)); //添加按鈕動(dòng)作事件 jButton1.addActionListener(this); //添加組件到面板 this.add(jScrollPane1); jScrollPane1.getViewport().add(jTextArea1); this.add(jLabel1); this.add(jTextField1); this.add(jButton1); } //點(diǎn)擊按鈕事件 publicvoidactionPerformed(ActionEvente) { //獲取用戶輸入的姓名 Stringxingming=jTextField1.getText(); //清空文本區(qū)原有的內(nèi)容 jTextArea1.setText(""); //要求用戶確認(rèn)刪除 try{ //利用st對(duì)象執(zhí)行SQL語句,返回結(jié)果集對(duì)象 ResultSetrs=st.executeQuery("select*fromStudentInfowhere姓名='"+xingming+"'"); //處理結(jié)果集:逐條顯示結(jié)果集中的記錄 while(rs.next()) { jTextArea1.append(rs.getString("學(xué)號(hào)")+""+rs.getString("姓名")+""+rs.getString("性別")+""+rs.getDate("出生日期")+""+rs.getString("籍貫")+"\n"); } } catch(Exceptionex) { //利用消息對(duì)話框提示查詢失敗 JOptionPane.showMessageDialog(this,"查詢失敗!"); } //清空文本行的內(nèi)容 jTextField1.setText(""); }}按學(xué)號(hào)查詢學(xué)生面板類的代碼packagejieweixiao;//導(dǎo)入系統(tǒng)的類包importjava.awt.*;importjava.sql.*;importjavax.swing.*;importjava.awt.event.*;//創(chuàng)建“添加學(xué)生面板”類publicclassInquireOnXHPanelextendsJPanelimplementsActionListener{ //聲明連接數(shù)據(jù)庫對(duì)象 Connectioncon; //聲明SQL語句對(duì)象 Statementst; //創(chuàng)建組件對(duì)象:標(biāo)簽、文本行、單選 JLabeljLabel1=newJLabel("請(qǐng)輸入待查詢的學(xué)生的學(xué)號(hào):"); JTextFieldjTextField1=newJTextField(); JButtonjButton1=newJButton("按學(xué)號(hào)查詢"); JTextAreajTextArea1=newJTextArea(); //構(gòu)造方法 publicInquireOnXHPanel() { try{ //調(diào)用初始化方法 jbInit(); } catch(Exceptionex){ JOptionPane.showMessageDialog(this,ex+"00"); } } //面板初始化方法 privatevoidjbInit()throwsException { //連接數(shù)據(jù)庫 //con=DBConnect.getConn(); Stringurl="jdbc:sqlserver://localhost:1433;DatabaseName=StudentManager"; Stringdriver="com.microsoft.sqlserver.jdbc.SQLServerDriver"; Class.forName(driver);//加載驅(qū)動(dòng)! con=DriverManager.getConnection(url,"sa","xjw1123");//連接數(shù)據(jù)庫! st=con.createStatement(); //框架的布局 this.setLayout(null); //設(shè)置各組件的大小 jLabel1.setFont(newjava.awt.Font("宋體",Font.BOLD,16)); jLabel1.setBounds(newRectangle(46,4,222,32)); jTextField1.setBounds(newRectangle(47,37,247,31)); jButton1.setBounds(newRectangle(47,86,247,30)); jTextArea1.setBounds(newRectangle(24,130,305,109)); //添加按鈕動(dòng)作事件 jButton1.addActionListener(this); //添加組件到面板 this.add(jLabel1); this.add(jTextField1); this.add(jTextArea1); this.add(jButton1); } //點(diǎn)擊按鈕事件 publicvoidactionPerformed(ActionEvente) { //獲取用戶輸入的學(xué)號(hào) Stringxuehao=jTextField1.getText(); //清空文本區(qū)原有的內(nèi)容 jTextArea1.setText(""); try{ //利用st對(duì)象執(zhí)行SQL語句,返回結(jié)果集對(duì)象 ResultSetrs=st.executeQuery("select*fromStudentInfowhere學(xué)號(hào)="+xuehao); //處理結(jié)果集:逐條顯示結(jié)果集中的記錄 //此處沒有使用while,因?yàn)閷W(xué)號(hào)是唯一的,而姓名不是,所以在InquireOnNamePanel.java里使用了while if(rs.next()) { jTextArea1.append(rs.getString("學(xué)號(hào)")+""+rs.getString("姓名")+""+rs.getString("性別")+""+rs.getDate("出生日期")+""+rs.getString("籍貫")+"\n"); } else { JOptionPane.showMessageDialog(this,"沒有這個(gè)學(xué)號(hào)!"); } } catch(Exceptionex){ //利用消息對(duì)話框提示查詢失敗 JOptionPane.showMessageDialog(this,"查詢失敗!+00"); } //清空文本行的內(nèi)容 jTextField1.setText(""); }}系統(tǒng)主界面類的代碼packagejieweixiao;//導(dǎo)入系統(tǒng)的包importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;//創(chuàng)建主界面類publicclassMainFrameextendsJFrameimplementsActionListener{ //創(chuàng)建內(nèi)容面板 JPanelcontentPane; //創(chuàng)建菜單欄(見267頁的圖12.1里的菜單欄) JMenuBarjMenuBar1=newJMenuBar(); JMenujMenuFile=newJMenu("文件"); JMenuItemjMenuFileExit=newJMenuItem("退出"); JMenujMenu1=newJMenu("學(xué)生管理"); JMenuItemjMenuItem1=newJMenuItem("添加學(xué)生"); JMenuItemjMenuItem2=newJMenuItem("刪除學(xué)生"); JMenuItemjMenu3=newJMenuItem("學(xué)生信息修改"); JMenujMenu2=newJMenu("學(xué)生查詢"); JMenuItemjMenuItem3=newJMenuItem("按姓名查詢"); JMenuItemjMenuItem4=newJMenuItem("按學(xué)號(hào)查詢"); //創(chuàng)建標(biāo)簽,用于顯示信息 JLabeljLabel1=newJLabel("歡迎使用學(xué)生信息管理系統(tǒng)"); JLabeljLabel2=newJLabel("2015-數(shù)據(jù)庫課程設(shè)計(jì)"); //構(gòu)造方法,創(chuàng)建對(duì)象時(shí)自動(dòng)調(diào)用 publicMainFrame() { try{ //關(guān)閉框架窗口時(shí)的默認(rèn)事件方法 setDefaultCloseOperation(EXIT_ON_CLOSE); //調(diào)用初始化方法 jbInit(); } catch(Exceptionexception){ exception.printStackTrace(); } } //界面初始化方法 privatevoidjbInit()throwsException { //創(chuàng)建內(nèi)容面板和其布局 contentPane=(JPanel)getContentPane(); contentPane.setLayout(null); //框架的大小和其標(biāo)題 setSize(newDimension(400,320)); setTitle("學(xué)生信息管理系統(tǒng)"); //添加事件監(jiān)聽器 jMenuFileExit.addActionListener(this); jMenuItem1.addActionListener(this); jMenuItem2.addActionListener(this); jMenuItem3.addActionListener(this); jMenuItem4.addActionListener(this); jMenu3.addActionListener(this); //添加菜單條 setJMenuBar(jMenuBar1); //添加菜單組件到菜單條 jMenuBar1.add(jMenuFile); jMenuBar1.add(jMenu1); jMenuBar1.add(jMenu2); jMenuBar1.add(jMenuFileExit); //添加菜單項(xiàng)組件到菜單組件 jMenuFile.add(jMenuFileExit); jMenu1.add(jMenuItem1); jMenu1.add(jMenuItem2); jMenu1.add(jMenu3); jMenu2.add(jMenuItem3); jMenu2.add(jMenuItem4); //添加標(biāo)簽到內(nèi)容面板 contentPane.add(jLabel1); contentPane.add(jLabel2); //設(shè)置標(biāo)簽組件的大小和字體 jLabel1.setFont(newjava.awt.Font("宋體",Font.BOLD,20)); jLabel1.setBounds(newRectangle(65,70,275,55)); jLabel2.setFont(newjava.awt.Font("宋體",Font.BOLD,16)); jLabel2.setBounds(newRectangle(90,150,200,35)); } //菜單事件的處理方法 publicvoidactionPerformed(ActionEventactionEvent) { //點(diǎn)擊“文件”菜單下的“退出”菜單項(xiàng) if(actionEvent.getSource()==jMenuFileExit) { System.exit(0); } //點(diǎn)擊“學(xué)生管理”菜單下的“添加學(xué)生”菜單項(xiàng) if(actionEvent.getSource()==jMenuItem1) { //創(chuàng)建添加學(xué)生面板對(duì)象 AddStudentPaneladd=newAddStudentPanel(); //移除主界面上原有的內(nèi)容 this.remove(this.getContentPane()); this.setContentPane(add); //令

溫馨提示

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