基于Java與SQL數(shù)據(jù)庫技術(shù)的學生成績管理系統(tǒng)(學籍管理系統(tǒng))_第1頁
基于Java與SQL數(shù)據(jù)庫技術(shù)的學生成績管理系統(tǒng)(學籍管理系統(tǒng))_第2頁
基于Java與SQL數(shù)據(jù)庫技術(shù)的學生成績管理系統(tǒng)(學籍管理系統(tǒng))_第3頁
基于Java與SQL數(shù)據(jù)庫技術(shù)的學生成績管理系統(tǒng)(學籍管理系統(tǒng))_第4頁
基于Java與SQL數(shù)據(jù)庫技術(shù)的學生成績管理系統(tǒng)(學籍管理系統(tǒng))_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)目目 錄錄設計總說明 -II1. 課程設計目的與需求分析 -3 1.1 課程設計目的 -3 1.2 需求分析 -32. 設計思路與主功能設計 -4 2.1 設計思路 -4 2.1.1 開發(fā)環(huán)境和軟件 -42.1.2 數(shù)據(jù)庫表結(jié)構(gòu) -42.1.3 程序設計圖 -4 2.2 功能設計與介紹 -53. 具體功能的介紹和數(shù)據(jù)測試 -53.1 登錄界面 -53.2 主功能界面 -7 3.2.1 查詢 -7 3.2.2 添加 -9 3.2.3 修改 -10 3.2.4 刪除 -12 3.2.5 關(guān)于 -13 3.2.6 退出 -134. 課程設計總結(jié) -145.

2、附錄(程度代碼) -15 精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)設計總說明1. 設計概況 名稱:學生學籍管理系統(tǒng) 用途:學校等機構(gòu) 功能:實現(xiàn)對學生學籍信息的管理與維護等功能2. 設計說明學生學籍管理系統(tǒng),可用于學校等機構(gòu)的學生信息管理,查詢,更新與維護,使用方便,易用性強,圖形界面清晰明了。該軟件用 java 語言編寫,用SQLServer2005 數(shù)據(jù)庫作為后臺的數(shù)據(jù)庫進行信息的存儲,用 SQL 語句完成添加,查詢,修改,刪除的操作。用 ODBC 驅(qū)動實現(xiàn)前臺 Java 與后臺 SQL 數(shù)據(jù)庫的連接。Java 語言跨平臺性強,可以在 windows,linux,ubuntu 等系統(tǒng)下使

3、用,方便簡單,安全性好。SQLServer2005 數(shù)據(jù)庫高效安全,兩者結(jié)合可相互利用各自的優(yōu)勢。系統(tǒng)可供輸入的屬性有“學號” , “姓名” , “性別” , “班級” , “學院” , “籍貫” 。該系統(tǒng)實現(xiàn)的大致功能:1管理員登陸界面。該界面可以輸入管理員號,登陸密碼。用戶通過驗證通過后方可進入管理系統(tǒng)。一定程度上保證了信息安全性,防止他人未經(jīng)允許篡改學生信息。2查詢學生信息??梢赃x擇由用戶選擇“顯示系統(tǒng)中當前的所有學生信息” 。也可以選擇按照“某一個學號查詢該學號的學生信息” 。查詢到的信息會在窗口中依次顯示出來。3添加學生信息??梢园凑請D形的界面的顯示依次輸入新學生的“學號” , “姓

4、名” ,“性別” , “班級” , “學院” , “籍貫” 。完成新紀錄的添加。4修改學生信息??梢赃x擇按照“學號”或者“姓名”找到該學生的學生信息并輸入要修改的屬性,并輸入新的數(shù)據(jù)。完成對學生記錄的修改。5刪除學生記錄??梢愿鶕?jù)輸入的“學號”或者”姓名”進行刪除的操作。3本系統(tǒng)只實現(xiàn)了基本操作功能, ,對于添加管理員,修改登錄密碼和數(shù)據(jù)庫信息備份等功能并未提供,便利性和安全性仍有不足,使用過程中造成的不便還請諒解!精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè) 精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)學生學籍管理系統(tǒng)信管 1081 班,4,吳曉陽 信管 1081 班,4,陳秀麗指導教師:陳亮1

5、課程設計目的與需求分析1.1 課程設計目的本課程設計作為Java 語言高級程序設計課程的延伸,在學生完成了Java語言高級程序設計課程的理論知識學習后,希望通過本次課程設計的實踐操作,能夠讓學生懂得 Java 的各種相關(guān)知識的使用,真正的提高學生獨立開發(fā)設計 Java 程序,把課堂上的知識運用在實踐上,一門編程語言只有在不斷實踐操作和練習上才會有進步。1.2 需求分析在一些學校等機構(gòu),隨著學生數(shù)量的不斷增加,學生的信息不斷增多,人工管理信息的難度也越來越大。而且效率也是很低的。所以如何自動高效地管理信息是這些年來許多人所研究的。隨著這些年電腦計算機的速度質(zhì)的提高,成本的下降,IT 互聯(lián)網(wǎng)大眾趨

6、勢的發(fā)展。我們使用電腦的高效率才處理數(shù)據(jù)信息成為可能。 學生學籍管理系統(tǒng)的出現(xiàn),正是管理人員與信息數(shù)據(jù),計算機的進入互動時代的體現(xiàn)。友好的人機交互模式,清晰簡明的圖形界面,高效安全的操作使得我們對成千上萬的信息的管理得心應手。學生學籍管理系統(tǒng),以 SQL 數(shù)據(jù)庫作為后臺信息存儲,Java 作為前臺系統(tǒng)的語言。提供了對學生信息添加,查詢,修改,刪除的功能。實現(xiàn)了最基本的信息管理。精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)2 設計思路與主功能設計 2.1 設計思路2.1.1 開發(fā)環(huán)境和軟件 本學籍采用Java語言編寫前臺程序,后臺采用SQL Server2005軟件管理數(shù)據(jù)庫,調(diào)試和運行皆由Ecl

7、ipse SDK 3.5.2完成。2.1.2 SQL 數(shù)據(jù)庫表結(jié)構(gòu) 2.1.3 程序設計圖 學生學籍管理系統(tǒng)登錄登錄驗證失敗成功退出查詢添加修改刪除精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)2.2 功能設計與介紹 1) 顯示已有學生信息2) 添加新的學生信息3) 修改已有學生信息4) 刪除已有學生信息5) 關(guān)于學籍管理系統(tǒng)6) 退出學籍管理系統(tǒng)3具體功能的介紹和數(shù)據(jù)測試3.1 登錄界面精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)登錄界面輸入“管理員號”和“登錄密碼” ,點擊“確定” ,通過驗證則進入主功能菜單。如果輸入錯誤則會有相應的警告! 1.當輸入了一個未存在的管理員號時,會出現(xiàn)下圖! 2當

8、輸入一個錯誤的密碼時,會出現(xiàn)下圖! 當前系統(tǒng)有兩個管理員賬號: 管理員號:4 密碼: 管理員號:4 密碼: 精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)3.2主功能界面3.2.1 查詢 點擊 , 則彈出下面的選擇菜單。 精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè) 1) 選擇“顯示所有學生記錄”時,在控制臺會顯示當前系統(tǒng)中所有的學生記錄 2) 選擇“查詢某個學生記錄”時,會彈出一下窗口要求用戶輸入“學號”。 當系統(tǒng)中有要查詢的學號記錄時,系統(tǒng)會顯示查詢到的詳細信息。 如果沒有查詢到,則顯示: 精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)3.2.2 添加點擊 ,會彈出輸入框,如下圖:在各個數(shù)據(jù)框中輸入

9、對應的信息(學號不能為空,且學號不能與已存在的記錄重復),如果輸入的新紀錄的學號已經(jīng)存在則: 如果添加的新紀錄學號為空,則 精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)如果輸入的各項數(shù)據(jù)正常時,則點擊“添加”按鈕后,學生記錄添加成功!3.2.3 修改點擊 ,進行“修改”的操作,彈出下面的選擇菜單。 1)選擇按“學號”修改:精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)將相應的數(shù)據(jù)填入輸入框中,如果修改的記錄不存在,則提示:如果數(shù)據(jù)正確且記錄存在,則顯示記錄修改成功: 2) 按“姓名”修改,同上.精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)3.2.4 刪除點擊 ,會顯示下面的菜單。1) 選擇按“學號”刪

10、除,出現(xiàn)以下窗口。 在彈出的窗口輸入你要刪除的記錄的學號。如果要刪除的記錄不存在,則顯示精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè) 如果輸入的的學號存在,則刪除成功。3.2.5 關(guān)于 點擊 ,顯示本學生管理系統(tǒng)的作者相關(guān)信息。 3.2.6 退出點擊 ,退出本學籍管理系統(tǒng)。精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)4 課程設計總結(jié)課程設計是培養(yǎng)學生綜合運用所學知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學生實際工作能力的具體訓練和考察過程. 本次課程設計雖然很辛苦,實在是受益匪淺。本來這門課的知識學的就不夠扎實,本次課程設計,在設計過程中碰到了很多問題,剛開始要設計的時候,

11、還真不知道從哪里下手但最終在圖書、同學和老師的幫助下都得到了解決,讓我學會了好多書本上沒有的東西,通過本次課程設計我也能將課本上的知識融會貫通,起到了很好的輔助學習的效果,但是我發(fā)現(xiàn)我學到的知識比整整一個學期學到的都多。理論和實踐的相結(jié)合是學習最有效的方法。在設計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,通過這次課程設計之后,一定把以前所學過的知識重新溫故。 通過這次課程設計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務,從而提高自己的實際動手能力和獨立思考的能力。

12、精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)附 錄(程序代碼)import javax.swing.*;import java.awt.BorderLayout;import java.awt.Container;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.*;class DataBase / DataBase 類public void Add(String xh,String xm,String xb,Strin

13、g xy,String bj,String jg) throws SQLException try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);Connection c=DriverManager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet r=s.executeQuery(select * from 學籍管

14、理系統(tǒng) where 學號=+xh+); r.last(); if(r.getRow()=1) JOptionPane.showMessageDialog( null ,該學號的學生信息已存在); else if(xh.equals() JOptionPane.showMessageDialog( null ,學號不能為空); else s.executeUpdate( insert into 學籍管理系統(tǒng) values (+xh+,+xm+,+xb+,+ xy+,+bj+,+jg+); s.close(); c.close();JOptionPane.showMessageDialog( nu

15、ll ,+學號:+xh+ +姓名:+xm+精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè) +性別:+xb+學院:+xy+班級:+bj+籍貫:+jg+ 學生記錄添加成功! ) ; catch(Exception e) JOptionPane.showMessageDialog( null , 數(shù)據(jù)添加異常! ) ; Public void DisplayAll(ResultSet r) try r.last(); System.out.println(數(shù)據(jù)庫表共有+r.getRow()+行記錄); r.beforeFirst(); while(r.next() System.out.print(第+

16、r.getRow()+行記錄:); System.out.print( 學號為:+r.getString(學號); System.out.print( 姓名為:+r.getString(姓名); System.out.print( 性別為:+r.getString(性別); System.out.print( 學院為:+r.getString(學院); System.out.print( 班級為:+r.getString(班級); System.out.println( 籍貫為:+r.getString(籍貫); catch(Exception e) public void DisplayOn

17、e(String str22) throws Exception try Connection c=DriverManager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)ResultSet r=s.executeQuery(select * from 學籍管理系統(tǒng) where 學號=+str22+); r.last(); int

18、cc=r.getRow(); if(cc=0) JOptionPane.showMessageDialog( null ,未查詢到相關(guān)信息! ) ; elser.beforeFirst(); while(r.nexJOptionPane.showMessageDialog( null ,+學號:+r.getString(學號)+ +姓名:+r.getString(姓名)+ +性別:+r.getString(性別)+ +學院:+r.getString(學院)+ +班級:+r.getString(班級)+ +籍貫:+r.getString(籍貫)+ 已查詢到相關(guān)記錄! ) ; catch(Exce

19、ption e) public void DeleteXh(String str11) try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); Connection c=DriverManager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet r=s.executeQuery(select * from 學籍管理

20、系統(tǒng) where 學號=+str11+); r.last(); if(r.getRow()=1) s.executeUpdate(delete from 學籍管理系統(tǒng) where 學號=+str11+); JOptionPane.showMessageDialog( null , 學生記錄刪除成功! ) ; 精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè) else JOptionPane.showMessageDialog( null ,學籍系統(tǒng)中并無相關(guān)記錄! ); catch(Exception e) public void DeleteXm(String str13) try Class.f

21、orName(sun.jdbc.odbc.JdbcOdbcDriver);Connection c=DriverManager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);ResultSet r=s.executeQuery(select * from 學籍管理系統(tǒng) where 姓名=+str13+); r.last(); if(r.getRow()=1) s.execut

22、eUpdate(delete from 學籍管理系統(tǒng) where 姓名=+str13+); JOptionPane.showMessageDialog( null , 學生記錄刪除成功! ) ; else JOptionPane.showMessageDialog( null ,學籍系統(tǒng)中并無相關(guān)記錄! ) ; catch(Exception e) public void UpdateXh(String xg,String str15,String str16) try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);Connection c=Drive

23、rManager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement(精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè) ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet r=s.executeQuery(select * from 學籍管理系統(tǒng) where 學號=+xg+); r.last(); if(r.getRow()=1) s.executeUpdate(update 學籍管理系統(tǒng) set +str15+=+s

24、tr16+ where 學號=+xg+); JOptionPane.showMessageDialog( null , 學生記錄修改成功! ) ; elseJOptionPane.showMessageDialog( null ,學籍系統(tǒng)中并無相關(guān)記錄! ) ; ; catch(Exception e) JOptionPane.showMessageDialog( null ,學籍系統(tǒng)中并無相關(guān)記錄! ) ; public void UpdateXm(String str18,String str19,String str20) try Class.forName(sun.jdbc.odbc.

25、JdbcOdbcDriver);Connection c=DriverManager.getConnection(jdbc:odbc:studentdatabase);Statement s=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet r=s.executeQuery(select * from 學籍管理系統(tǒng) where 姓名=+str18+); r.last(); if(r.getRow()=1) s.executeUpdate(update 學籍管理系統(tǒng)

26、 set +str19+=+str20+ where 姓名=+str18+); /直接執(zhí)行 SQL 語句修改 JOptionPane.showMessageDialog( null , 學生記錄修改成功! ) ; elseJOptionPane.showMessageDialog( null ,學籍系統(tǒng)中并無相關(guān)記錄! ) ; 精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè) ; catch(Exception e) JOptionPane.showMessageDialog( null ,學籍系統(tǒng)中并無相關(guān)記錄! ) ; class J_ActionListener1 extends JFrame

27、 implements ActionListener /創(chuàng)建 J_ActionListener1 類監(jiān)聽功能選項面板顯示已有學生信息的按鈕 public void actionPerformed(ActionEvent e) JButton b1=(JButton)e.getSource();Object aa= JOptionPane.showInputDialog(null, 請選擇按何種方式查詢,選擇, JOptionPane.QUESTION_MESSAGE,null, new String 顯示所有學生記錄,查詢某個學生記錄,顯示所有學生記錄);if(aa=顯示所有學生記錄) try

28、 Connection c = DriverManager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet r=s.executeQuery(select * from 學籍管理系統(tǒng)); DataBase a =new DataBase(); a. DisplayAll(r); catch (SQLException e1) elsetryConnecti

29、on c= DriverManager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); DataBase a=new DataBase(); String str11=JOptionPane.showInputDialog(請輸入要查詢的記錄的學號); a.DisplayOne(str11); catch (Exception e1) 精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專

30、業(yè) class J_ActionListener2 extends JFrame implements ActionListener Public void actionPerformed(ActionEvent e) JButton b2=(JButton)e.getSource(); try new J_ActionListener6(); catch (Exception e2) Class J_ActionListener6 extends J_ActionListener2 implements ActionListener DataBase a = new DataBase();

31、JTextField jtf1 = new JTextField(); JTextField jtf2 = new JTextField() ; JTextField jtf3 = new JTextField() ; JTextField jtf4 = new JTextField() ; JTextField jtf5 = new JTextField() ; JTextField jtf6 = new JTextField() ; JButton btn = null ; J_ActionListener6() this.setTitle(請輸入數(shù)據(jù):) ; /創(chuàng)建框架的標題 this.

32、setBounds(250, 100, 220,320) ; /框架的大小和坐標 this.setResizable(false); this.setVisible(true); this.setLayout(null) ; JLabel jlb1 = new JLabel(學號:) ; /創(chuàng)建學號的標簽 jlb1.setBounds(43,23,100,25) ; this.add(jlb1) ; JLabel jlb2 = new JLabel(姓名:) ; jlb2.setBounds(43,58,100,25) ; this.add(jlb2) ; JLabel jlb3 = new

33、JLabel(性別:) ;精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè) jlb3.setBounds(43,93,100,25) ; this.add(jlb3) ; JLabel jlb4 = new JLabel(學院:) ; jlb4.setBounds(43,128,100,25) ; this.add(jlb4) ; JLabel jlb5 = new JLabel(班級:) ; jlb5.setBounds(43,163,100,25) ; this.add(jlb5) ; JLabel jlb6 = new JLabel(籍貫:) ; jlb6.setBounds(43,198,1

34、00,25) ; this.add(jlb6) ; jtf1.setBounds(80,25,100,25) ; this.add(jtf1) ; jtf2.setBounds(80,60,100,25) ; this.add(jtf2) ; jtf3.setBounds(80,95,100,25) ; this.add(jtf3) ; jtf4.setBounds(80,130,100,25) ; this.add(jtf4) ; jtf5.setBounds(80,165,100,25) ; this.add(jtf5) ; jtf6.setBounds(80,200,100,25) ;

35、this.add(jtf6) ; btn = new JButton(添加) ; btn.setBounds(68,245,80,30) ; /設置按鈕的大小和位置 this.add(btn) ; /將按鈕添加進面板里 btn.addActionListener(this) ; (JComponent) this.getContentPane().setOpaque(false); .URL url = JavaSql.class.getResource(背景 1.jpg);ImageIcon img = new ImageIcon(url); JLabel background = new

36、JLabel(img); this.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE);background.setBounds(0,0,img.getIconWidth(),img.getIconHeight();public void actionPerformed(ActionEvent e) 精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)JButton btn=(JButton)e.getSource(); String xh = jtf1.getText() ; String xm = jtf2.getText(

37、) ; String xb = jtf3.getText() ; String xy = jtf4.getText() ; String bj = jtf5.getText() ; String jg = jtf6.getText() ; try a.Add(xh,xm,xb,xy,bj,jg); this.setVisible(false); catch (SQLException e1) class J_ActionListener3 extends JFrame implements ActionListener /創(chuàng)建 J_ActionListener3 監(jiān)聽功能面板”修改已有學生信息

38、“的按鈕 final DataBase a=new DataBase(); JFrame xiugai=new JFrame(); String b=null; public void jiemian() /在J_ActionListener3 類里添加 jiemian()方法,創(chuàng)建按學號修改數(shù)據(jù)的界面 this.setTitle(請輸入數(shù)據(jù):) ; this.setSize(230,320) ; this.setLocation(200,130); this.setResizable(false); this.setVisible(true); JLabel jlb1 = new JLabe

39、l(請輸入要修改的學生的+b) ; /設置 3 個標簽 JLabel jlb2 = new JLabel(請輸入要修改的屬性) ; JLabel jlb3 = new JLabel(請輸入新的數(shù)據(jù)) ; final JTextField jtf1 = new JTextField() ; /設置三個文本框 final JTextField jtf2 = new JTextField() ; final JTextField jtf3 = new JTextField() ; JButton xg=new JButton(修改); /創(chuàng)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)建”修改“按鈕 C

40、ontainer c=getContentPane();c.setLayout(null);jlb1.setBounds(20,15,170,30);c.add(jlb1);jlb2.setBounds(20,80,170,30);c.add(jlb2);jlb3.setBounds(20,145,170,30);c.add(jlb3);jtf1.setBounds(20,45,170,30);c.add(jtf1);jtf2.setBounds(20,110,170,30);c.add(jtf2);jtf3.setBounds(20,180,170,30);c.add(jtf3);xg.se

41、tBounds(80,230,60,35); c.add(xg);xg.addActionListener(new ActionListener() /為”修改“按鈕添加事件觸發(fā) public void actionPerformed( ActionEvent e) / 當修改的按鈕被點擊時執(zhí)行 JButton xg=(JButton)e.getSource(); String xuehao=jtf1.getText(); /獲取文本框的數(shù)據(jù) String shuxin=jtf2.getText(); String xinshuju=jtf3.getText(); a.UpdateXh(xue

42、hao,shuxin,xinshuju); setVisible(false); );(JComponent) this.getContentPane().setOpaque(false); /設置背景圖片 .URL url = JavaSql.class.getResource(背景 2.jpg);ImageIcon img = new ImageIcon(url); JLabel background = new JLabel(img);精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè) this.getLayeredPane().add(background, new Integer(Integ

43、er.MIN_VALUE);background.setBounds(0, 0, img.getIconWidth(), img.getIconHeight(); public void jiemian2() /在J_ActionListener3 類里添加 jiemian2()方法,創(chuàng)建按姓名修改數(shù)據(jù)的界面 this.setTitle(請輸入數(shù)據(jù):) ; this.setSize(230,320) ; this.setLocation(200,130); this.setResizable(false); this.setVisible(true); JLabel jlb1 = new JL

44、abel(請輸入要修改的學生的+b) ; /設置 3 個標簽 JLabel jlb2 = new JLabel(請輸入要修改的屬性) ; JLabel jlb3 = new JLabel(請輸入新的數(shù)據(jù)) ; final JTextField jtf1 = new JTextField() ; /設置三個文本框 final JTextField jtf2 = new JTextField() ; final JTextField jtf3 = new JTextField() ; JButton xg=new JButton(修改); /創(chuàng)建”修改“按鈕 Container c=getCont

45、entPane();c.setLayout(null);jlb1.setBounds(20,15,170,30);c.add(jlb1);jlb2.setBounds(20,80,170,30);c.add(jlb2);jlb3.setBounds(20,145,170,30);c.add(jlb3);jtf1.setBounds(20,45,170,30);c.add(jtf1);jtf2.setBounds(20,110,170,30);c.add(jtf2);jtf3.setBounds(20,180,170,30);精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)c.add(jtf3);xg

46、.setBounds(80,230,60,35); c.add(xg);xg.addActionListener(new ActionListener() /為”修改“按鈕添加事件觸發(fā) public void actionPerformed( ActionEvent e) / 當修改的按鈕被點擊時執(zhí)行 JButton xg=(JButton)e.getSource(); String xinming=jtf1.getText(); /獲取文本框的數(shù)據(jù) String shuxin=jtf2.getText(); String xinshuju=jtf3.getText(); a.UpdateXm

47、(xinming,shuxin,xinshuju); setVisible(false); );(JComponent) this.getContentPane().setOpaque(false); /設置背景圖片 .URL url = JavaSql.class.getResource(背景 2.jpg);ImageIcon img = new ImageIcon(url); JLabel background = new JLabel(img); this.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE);ba

48、ckground.setBounds(0, 0, img.getIconWidth(), img.getIconHeight(); public void actionPerformed(ActionEvent e) JButton b3=(JButton)e.getSource(); /當主功能選項面板的”修改已有學生信息“的按鈕被點擊時執(zhí)行 Object aa= JOptionPane.showInputDialog(null, 請選擇按何種方式修改,選擇, /彈出窗口讓用戶選擇按何種方式進行修改 JOptionPane.QUESTION_MESSAGE,null, new String

49、學號,姓名,學號);精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè) if(aa=學號) /當用戶選擇按”學號“修改時執(zhí)行 b=學號; this.jiemian(); if(aa=姓名) /當用戶選擇按”姓名“修改時執(zhí)行 b=姓名; this.jiemian2(); class J_ActionListener4 implements ActionListener /創(chuàng)建 J_ActionListener2 類監(jiān)聽功能選項面板添加新的學生信息的按鈕 public void actionPerformed(ActionEvent e) JButton b4=(JButton)e.getSource()

50、; DataBase a=new DataBase(); /實例化 DataBase 類 Object aa= JOptionPane.showInputDialog(null, 請選擇按何種方式刪除,選擇,JOptionPane.QUESTION_MESSAGE, /彈出窗口讓用戶選擇按何種方式進行刪除 null,new String 學號,姓名,學號); if(aa=學號) String str11=JOptionPane.showInputDialog(請輸入要刪除的記錄的學號); /當用戶選擇按”學號“刪除時執(zhí)行 a.DeleteXh(str11); /執(zhí)行 DataBase 類的De

51、leteXh 方法 else String str13=JOptionPane.showInputDialog(請輸入要刪除的記錄的姓名); /當用戶選擇按”姓名“修改時執(zhí)行 a.DeleteXm(str13); /執(zhí)行 DataBase類的 DeleteXm 方法 精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè) class J_ActionListener5 implements ActionListener /創(chuàng)建 J_ActionListener2 類監(jiān)聽功能選項面板關(guān)于學籍管理系統(tǒng)的按鈕 public void actionPerformed(ActionEvent e) /按鈕被點擊執(zhí)行

52、 JButton b5=(JButton)e.getSource(); JOptionPane.showMessageDialog( null ,*本系統(tǒng)由 吳曉陽 陳秀麗 制作*n* 日期:2010 年 12 月 * ) ; class JavaSql extends JFrame implements ActionListener /主類 JavaSql /添加設置用戶名和密碼輸入的圖形界面 JFrame denglu=new JFrame(登錄); /創(chuàng)建”登錄“的框架 JButton quedin = new JButton( 確定); /創(chuàng)建”確定“按鈕 JLabel t1=new

53、JLabel(管理員號:); /創(chuàng)建標簽”管理員號“ JTextField t2=new JTextField(null,15); /創(chuàng)建管理員號的輸入欄 JLabel t3=new JLabel(登錄密碼:); /創(chuàng)建標簽登錄密碼 JTextField t4=new JPasswordField(null,15); /創(chuàng)建登錄密碼的輸入欄 public void init() /在數(shù)據(jù)庫中創(chuàng)建一張”學籍管理系統(tǒng)“表精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); Connection c=DriverM

54、anager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement(); s.executeUpdate(create table 學籍管理系統(tǒng)( + 學號 char(15) CONSTRAINT authIndex PRIMARY KEY,+ 姓名 char(10),+ 性別 char(4),+ 學院 char(8),+ 班級 char(8),+ 籍貫 char(5); s.close(); c.close(); System.out.println(*歡迎使用學籍管理系統(tǒng)*);catch(Except

55、ion e) /該表已存在 System.out.println(*歡迎使用學籍管理系統(tǒng)*); public void zhujiemian() /定義 jiemian()的方法,創(chuàng)建主功能的圖形界面 Container c=getContentPane(); /設置主功能界面的按鈕的大小和坐標位置c.setLayout(null);JButton b1=new JButton(顯示已有學生信息);b1.setBounds(10,10,160,30);JButton b2=new JButton(添加新的學生信息);b2.setBounds(10,45,160,30);精選優(yōu)質(zhì)文檔-傾情為你奉

56、上專心-專注-專業(yè)JButton b3=new JButton(修改已有學生信息);b3.setBounds(10,80,160,30);JButton b4=new JButton(刪除已有學生信息);b4.setBounds(10,115,160,30);JButton b5=new JButton(關(guān)于學籍管理系統(tǒng)); b5.setBounds(10,150,160,30);JButton b6=new JButton(退出學籍管理系統(tǒng)); b6.setBounds(10,185,163,30);J_ActionListener1 a1=new J_ActionListener1();

57、/ 實例化各個按鈕監(jiān)聽的類J_ActionListener2 a2=new J_ActionListener2();J_ActionListener3 a3=new J_ActionListener3();J_ActionListener4 a4=new J_ActionListener4();J_ActionListener5 a5=new J_ActionListener5();b1.addActionListener(a1); b2.addActionListener(a2);b3.addActionListener(a3);b4.addActionListener(a4);b5.addActionListener(a5);b6.addActionListener(new ActionListener() /為”退出學籍管理系統(tǒng)“的按鈕添加事件監(jiān)聽觸發(fā) public void actionPerformed(final ActionEvent e) System.exit(0); /該按鈕點擊時,退出學籍管理系統(tǒng) );c.add(b1); /將按鈕逐個添加到面板里c.add(b2);c.add(b3);c.add(b4);精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)c.add(b5);c.add(b6)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論