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

下載本文檔

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

文檔簡介

1、-PAGE . z. - .- -可修編- -目 錄設計總說明 II1. 課程設計目的與需求分析 3 1.1 課程設計目的 3 1.2 需求分析 32. 設計思路與主功能設計 4 2.1 設計思路 4 開發(fā)環(huán)境和軟件 4 數(shù)據(jù)庫表結(jié)構(gòu) 4 程序設計圖 4 2.2 功能設計與介紹 53. 具體功能的介紹和數(shù)據(jù)測試 53.1 登錄界面 53.2 主功能界面 7 查詢 7 添加 9 修改 10 刪除 12 關于 13 退出 134. 課程設計總結(jié) 145. 附錄(程度代碼) 15設計總說明設計概況 名稱:學生學籍管理系統(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,linu*,ubuntu等系統(tǒng)下使用,方便簡單,安全性好。SQLServer2005數(shù)據(jù)庫高效安全,兩者結(jié)合可相互利用各自的優(yōu)勢。系統(tǒng)可供輸入的屬性有*”,”,性別”,班級”,學院”,籍貫”。該系統(tǒng)實現(xiàn)的大致功能:管理員登陸界面。該界面可以輸入管理員號,登陸密碼。

3、用戶通過驗證通過后方可進入管理系統(tǒng)。一定程度上保證了信息安全性,防止他人未經(jīng)允許篡改學生信息。查詢學生信息。可以選擇由用戶選擇顯示系統(tǒng)中當前的所有學生信息”。也可以選擇按照*一個*查詢該*的學生信息”。查詢到的信息會在窗口中依次顯示出來。添加學生信息??梢园凑請D形的界面的顯示依次輸入新學生的*”,”,性別”,班級”,學院”,籍貫”。完成新紀錄的添加。修改學生信息??梢赃x擇按照*”或者”找到該學生的學生信息并輸入要修改的屬性,并輸入新的數(shù)據(jù)。完成對學生記錄的修改。刪除學生記錄??梢愿鶕?jù)輸入的*”或者”進行刪除的操作。3本系統(tǒng)只實現(xiàn)了基本操作功能,對于添加管理員,修改登錄密碼和數(shù)據(jù)庫信息備份等功能

4、并未提供,便利性和安全性仍有不足,使用過程中造成的不便還請諒解!-. z.學生學籍管理系統(tǒng)信管1081班,4,吳曉陽 信管1081班,4,秀麗指導教師:亮課程設計目的與需求分析1.1 課程設計目的本課程設計作為Java語言高級程序設計課程的延伸,在學生完成了Java語言高級程序設計課程的理論知識學習后,希望通過本次課程設計的實踐操作,能夠讓學生懂得Java的各種相關知識的使用,真正的提高學生獨立開發(fā)設計Java程序,把課堂上的知識運用在實踐上,一門編程語言只有在不斷實踐操作和練習上才會有進步。1.2需求分析在一些學校等機構(gòu),隨著學生數(shù)量的不斷增加,學生的信息不斷增多,人工管理信息的難度也越來越

5、大。而且效率也是很低的。所以如何自動高效地管理信息是這些年來許多人所研究的。隨著這些年電腦計算機的速度質(zhì)的提高,成本的下降,IT互聯(lián)網(wǎng)大眾趨勢的發(fā)展。我們使用電腦的高效率才處理數(shù)據(jù)信息成為可能。 學生學籍管理系統(tǒng)的出現(xiàn),正是管理人員與信息數(shù)據(jù),計算機的進入互動時代的體現(xiàn)。友好的人機交互模式,清晰簡明的圖形界面,高效安全的操作使得我們對成千上萬的信息的管理得心應手。學生學籍管理系統(tǒng),以SQL數(shù)據(jù)庫作為后臺信息存儲,Java作為前臺系統(tǒng)的語言。提供了對學生信息添加,查詢,修改,刪除的功能。實現(xiàn)了最基本的信息管理。2 設計思路與主功能設計2.1 設計思路開發(fā)環(huán)境和軟件本學籍采用Java語言編寫前臺程

6、序,后臺采用SQL Server2005軟件管理數(shù)據(jù)庫,調(diào)試和運行皆由Eclipse SDK完成。SQL數(shù)據(jù)庫表結(jié)構(gòu)2.1.3 程序設計圖刪除修改添加查詢登錄退出失敗成功登錄驗證學生學籍管理系統(tǒng)2.2 功能設計與介紹顯示已有學生信息添加新的學生信息修改已有學生信息刪除已有學生信息關于學籍管理系統(tǒng)退出學籍管理系統(tǒng)具體功能的介紹和數(shù)據(jù)測試 登錄界面登錄界面輸入管理員號”和登錄密碼”,點擊確定”,通過驗證則進入主功能菜單。如果輸入錯誤則會有相應的警告! 1.當輸入了一個未存在的管理員號時,會出現(xiàn)下圖!2當輸入一個錯誤的密碼時,會出現(xiàn)下圖!當前系統(tǒng)有兩個管理員賬號: 管理員號:4 密碼:123456

7、管理員號:4 密碼:123456主功能界面 查詢點擊 , 則彈出下面的選擇菜單。 1) 選擇顯示所有學生記錄”時,在控制臺會顯示當前系統(tǒng)中所有的學生記錄 2) 選擇查詢*個學生記錄”時,會彈出一下窗口要求用戶輸入*”。 當系統(tǒng)中有要查詢的*記錄時,系統(tǒng)會顯示查詢到的詳細信息。 如果沒有查詢到,則顯示: 添加點擊 ,會彈出輸入框,如下圖:在各個數(shù)據(jù)框中輸入對應的信息(*不能為空,且*不能與已存在的記錄重復),如果輸入的新紀錄的*已經(jīng)存在則: 如果添加的新紀錄*為空,則 如果輸入的各項數(shù)據(jù)正常時,則點擊添加”按鈕后,學生記錄添加成功! 修改點擊,進行修改”的操作,彈出下面的選擇菜單。1)選擇按*”

8、修改:將相應的數(shù)據(jù)填入輸入框中,如果修改的記錄不存在,則提示:如果數(shù)據(jù)正確且記錄存在,則顯示記錄修改成功:2) 按”修改,同上.-. z. 刪除點擊,會顯示下面的菜單。選擇按*”刪除,出現(xiàn)以下窗口。在彈出的窗口輸入你要刪除的記錄的*。如果要刪除的記錄不存在,則顯示 如果輸入的的*存在,則刪除成功。 關于 點擊,顯示本學生管理系統(tǒng)的作者相關信息。 退出點擊 ,退出本學籍管理系統(tǒng)。-. z.4 課程設計總結(jié)課程設計是培養(yǎng)學生綜合運用所學知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學生實際工作能力的具體訓練和考察過程. 本次課程設計雖然很辛苦,實在是受益匪淺。本來這門課的知識學

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

10、得出結(jié)論,才能真正為社會服務,從而提高自己的實際動手能力和獨立思考的能力。-. z.附錄(程序代碼)import java*.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 *h,String

11、 *m,String *b,String *y,String bj,String jg) throws SQLE*ception 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.e*ecuteQuer

12、y(select * from 學籍管理系統(tǒng)where *=+*h+); r.last(); if(r.getRow()=1) JOptionPane.showMessageDialog( null ,該*的學生信息已存在); else if(*h.equals() JOptionPane.showMessageDialog( null ,*不能為空); else s.e*ecuteUpdate( insert into 學籍管理系統(tǒng) values (+*h+,+*m+,+*b+,+ *y+,+bj+,+jg+); s.close(); c.close();JOptionPane.showMe

13、ssageDialog( null ,+*:+*h+ +:+*m+ +性別:+*b+學院:+*y+班級:+bj+籍貫:+jg+ 學生記錄添加成功! ) ; catch(E*ception 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.ne*t() System.out.print(第+r.getRow(

14、)+行記錄:); 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(E*ception e) public void DisplayOne(String str22)

15、 throws E*ception try Connectionc=DriverManager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);ResultSet r=s.e*ecuteQuery(select * from 學籍管理系統(tǒng) where *=+str22+); r.last(); int cc=r.getRow(); if(cc=0) JOptionPane.sh

16、owMessageDialog( null ,未查詢到相關信息! ) ; elser.beforeFirst(); while(r.ne*JOptionPane.showMessageDialog( null ,+*:+r.getString(*)+ +:+r.getString()+ +性別:+r.getString(性別)+ +學院:+r.getString(學院)+ +班級:+r.getString(班級)+ +籍貫:+r.getString(籍貫)+ 已查詢到相關記錄! ) ; catch(E*ception e) public void Delete*h(String str11)

17、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.e*ecuteQuery(select * from 學籍管理系統(tǒng) where *=+str11+); r.last(); if(r.getRow()

18、=1) s.e*ecuteUpdate(delete from 學籍管理系統(tǒng) where *=+str11+); JOptionPane.showMessageDialog( null , 學生記錄刪除成功! ) ; else JOptionPane.showMessageDialog( null ,學籍系統(tǒng)中并無相關記錄! ); catch(E*ception e) public void Delete*m(String str13) try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);Connection c=DriverManager.getC

19、onnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);ResultSet r=s.e*ecuteQuery(select * from 學籍管理系統(tǒng) where =+str13+); r.last(); if(r.getRow()=1) s.e*ecuteUpdate(delete from 學籍管理系統(tǒng) where =+str13+); JOptionPane.showMessageDia

20、log( null , 學生記錄刪除成功! ) ; else JOptionPane.showMessageDialog( null ,學籍系統(tǒng)中并無相關記錄! ) ; catch(E*ception e) public void Update*h(String *g,String str15,String str16) try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);Connection c=DriverManager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createS

21、tatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet r=s.e*ecuteQuery(select * from 學籍管理系統(tǒng) where *=+*g+); r.last(); if(r.getRow()=1) s.e*ecuteUpdate(update 學籍管理系統(tǒng) set +str15+=+str16+ where *=+*g+); JOptionPane.showMessageDialog( null , 學生記錄修改成功! ) ; elseJOptionPane.showM

22、essageDialog( null ,學籍系統(tǒng)中并無相關記錄! ) ; ; catch(E*ception e) JOptionPane.showMessageDialog( null ,學籍系統(tǒng)中并無相關記錄! ) ; public void Update*m(String str18,String str19,String str20) try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver);Connection c=DriverManager.getConnection(jdbc:odbc:studentdatabase);Statement s

23、=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet r=s.e*ecuteQuery(select * from 學籍管理系統(tǒng) where =+str18+); r.last(); if(r.getRow()=1) s.e*ecuteUpdate(update 學籍管理系統(tǒng) set +str19+=+str20+ where =+str18+); /直接執(zhí)行SQL語句修改 JOptionPane.showMessageDialog( null , 學生記錄修改成功

24、! ) ; elseJOptionPane.showMessageDialog( null ,學籍系統(tǒng)中并無相關記錄! ) ; ; catch(E*ception e) JOptionPane.showMessageDialog( null ,學籍系統(tǒng)中并無相關記錄! ) ; class J_ActionListener1 e*tends JFrame implements ActionListener /創(chuàng)建J_ActionListener1類監(jiān)聽功能選項面板顯示已有學生信息的按鈕 public void actionPerformed(ActionEvent e) utton b1=(ut

25、ton)e.getSource();Object aa= JOptionPane.showInputDialog(null, 請選擇按何種方式查詢,選擇, JOptionPane.QUESTION_MESSAGE,null, new String 顯示所有學生記錄,查詢*個學生記錄,顯示所有學生記錄);if(aa=顯示所有學生記錄) try Connection c = DriverManager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement( ResultSet.TYPE_SCROLL_SENS

26、ITIVE, ResultSet.CONCUR_UPDATABLE); ResultSet r=s.e*ecuteQuery(select * from 學籍管理系統(tǒng)); DataBase a =new DataBase(); DisplayAll(r); catch (SQLE*ception e1) elsetryConnection c= DriverManager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement( ResultSet.TYPE_SCROLL_SENSITIVE, Result

27、Set.CONCUR_UPDATABLE); DataBase a=new DataBase(); String str11=JOptionPane.showInputDialog(請輸入要查詢的記錄的*); a.DisplayOne(str11); catch (E*ception e1) class J_ActionListener2 e*tends JFrame implements ActionListener Public void actionPerformed(ActionEvent e) utton b2=(utton)e.getSource(); try new J_Acti

28、onListener6(); catch (E*ception e2) Class J_ActionListener6 e*tends J_ActionListener2 implements ActionListener DataBase a = new DataBase(); JTe*tField jtf1 = new JTe*tField(); JTe*tField jtf2 = new JTe*tField() ; JTe*tField jtf3 = new JTe*tField() ; JTe*tField jtf4 = new JTe*tField() ; JTe*tField j

29、tf5 = new JTe*tField() ; JTe*tField jtf6 = new JTe*tField() ; utton btn = null ; J_ActionListener6() this.setTitle(請輸入數(shù)據(jù):) ; /創(chuàng)建框架的標題 this.setBounds(250, 100, 220,320) ; /框架的大小和坐標 this.setResizable(false); this.setVisible(true); this.setLayout(null) ; JLabel jlb1 = new JLabel(*:) ; /創(chuàng)建*的標簽 jlb1.setB

30、ounds(43,23,100,25) ; this.add(jlb1) ; JLabel jlb2 = new JLabel(:) ; jlb2.setBounds(43,58,100,25) ; this.add(jlb2) ; JLabel jlb3 = new JLabel(性別:) ; 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 JLab

31、el(班級:) ; jlb5.setBounds(43,163,100,25) ; this.add(jlb5) ; JLabel jlb6 = new JLabel(籍貫:) ; jlb6.setBounds(43,198,100,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(8

32、0,130,100,25) ; this.add(jtf4) ; jtf5.setBounds(80,165,100,25) ; this.add(jtf5) ; jtf6.setBounds(80,200,100,25) ; this.add(jtf6) ; btn = new utton(添加) ; btn.setBounds(68,245,80,30) ; /設置按鈕的大小和位置 this.add(btn) ; /將按鈕添加進面板里btn.addActionListener(this) ; (Jponent) this.getContentPane().setOpaque(false);

33、 .URL url = JavaSql.class.getResource(背景1.jpg);ImageIcon img = new ImageIcon(url); JLabel background = new JLabel(img); this.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE);background.setBounds(0,0,img.getIconWidth(),img.getIconHeight();public void actionPerformed(ActionEvent e) utto

34、n btn=(utton)e.getSource(); String *h = jtf1.getTe*t() ; String *m = jtf2.getTe*t() ; String *b = jtf3.getTe*t() ; String *y = jtf4.getTe*t() ; String bj = jtf5.getTe*t() ; String jg = jtf6.getTe*t() ; try a.Add(*h,*m,*b,*y,bj,jg); this.setVisible(false); catch (SQLE*ception e1) class J_ActionListen

35、er3 e*tends JFrame implements ActionListener /創(chuàng)建J_ActionListener3監(jiān)聽功能面板”修改已有學生信息的按鈕 final DataBase a=new DataBase(); JFrame *iugai=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,13

36、0); this.setResizable(false); this.setVisible(true); JLabel jlb1 = new JLabel(請輸入要修改的學生的+b) ; /設置3個標簽 JLabel jlb2 = new JLabel(請輸入要修改的屬性) ; JLabel jlb3 = new JLabel(請輸入新的數(shù)據(jù)) ; final JTe*tField jtf1 = new JTe*tField() ; /設置三個文本框 final JTe*tField jtf2 = new JTe*tField() ; final JTe*tField jtf3 = new J

37、Te*tField() ; utton *g=new utton(修改); /創(chuàng)建”修改按鈕 Container 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)

38、;jtf3.setBounds(20,180,170,30);c.add(jtf3);*g.setBounds(80,230,60,35); c.add(*g);*g.addActionListener(new ActionListener() /為”修改按鈕添加事件觸發(fā) public void actionPerformed( ActionEvent e) / 當修改的按鈕被點擊時執(zhí)行 utton *g=(utton)e.getSource(); String *uehao=jtf1.getTe*t(); /獲取文本框的數(shù)據(jù) String shu*in=jtf2.getTe*t(); Str

39、ing *inshuju=jtf3.getTe*t(); a.Update*h(*uehao,shu*in,*inshuju); setVisible(false); );(Jponent) 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,

40、 new Integer(Integer.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

41、 jlb1 = new JLabel(請輸入要修改的學生的+b) ; /設置3個標簽 JLabel jlb2 = new JLabel(請輸入要修改的屬性) ; JLabel jlb3 = new JLabel(請輸入新的數(shù)據(jù)) ; final JTe*tField jtf1 = new JTe*tField() ; /設置三個文本框 final JTe*tField jtf2 = new JTe*tField() ; final JTe*tField jtf3 = new JTe*tField() ; utton *g=new utton(修改); /創(chuàng)建”修改按鈕 Container c=

42、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);*g.setBounds(80,

43、230,60,35); c.add(*g);*g.addActionListener(new ActionListener() /為”修改按鈕添加事件觸發(fā) public void actionPerformed( ActionEvent e) / 當修改的按鈕被點擊時執(zhí)行 utton *g=(utton)e.getSource(); String *inming=jtf1.getTe*t(); /獲取文本框的數(shù)據(jù) String shu*in=jtf2.getTe*t(); String *inshuju=jtf3.getTe*t(); a.Update*m(*inming,shu*in,*in

44、shuju); setVisible(false); );(Jponent) 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);background.setBounds(0, 0

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

46、行 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) utton b4=(utton)e.getSource(); DataBase a=new DataBase(); /實例化DataBase類 Object aa= JOptionPane.showI

47、nputDialog(null, 請選擇按何種方式刪除,選擇,JOptionPane.QUESTION_MESSAGE, /彈出窗口讓用戶選擇按何種方式進行刪除 null,new String *,*); if(aa=*) String str11=JOptionPane.showInputDialog(請輸入要刪除的記錄的*); /當用戶選擇按”*刪除時執(zhí)行 a.Delete*h(str11); /執(zhí)行DataBase類的Delete*h方法 else String str13=JOptionPane.showInputDialog(請輸入要刪除的記錄的); /當用戶選擇按”修改時執(zhí)行 a.

48、Delete*m(str13); /執(zhí)行DataBase類的Delete*m方法 class J_ActionListener5 implements ActionListener /創(chuàng)建J_ActionListener2類監(jiān)聽功能選項面板關于學籍管理系統(tǒng)的按鈕 public void actionPerformed(ActionEvent e) /按鈕被點擊執(zhí)行 utton b5=(utton)e.getSource(); JOptionPane.showMessageDialog( null ,*本系統(tǒng)由 吳曉陽 秀麗 制作*n* 日期:2010年12月 * ) ; class JavaS

49、ql e*tends JFrame implements ActionListener /主類JavaSql /添加設置用戶名和密碼輸入的圖形界面 JFrame denglu=new JFrame(登錄); /創(chuàng)建”登錄的框架 utton quedin = new utton( 確定); /創(chuàng)建”確定按鈕 JLabel t1=new JLabel(管理員號:); /創(chuàng)建標簽”管理員號 JTe*tField t2=new JTe*tField(null,15); /創(chuàng)建管理員號的輸入欄 JLabel t3=new JLabel(登錄密碼:); /創(chuàng)建標簽登錄密碼 JTe*tField t4=ne

50、w JPasswordField(null,15); /創(chuàng)建登錄密碼的輸入欄 public void init() /在數(shù)據(jù)庫中創(chuàng)建一”學籍管理系統(tǒng)表try Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); Connection c=DriverManager.getConnection(jdbc:odbc:studentdatabase); Statement s=c.createStatement(); s.e*ecuteUpdate(create table 學籍管理系統(tǒng)( + * char(15) CONSTRAINT authInde* PRI

51、MARY KEY,+ char(10),+ 性別 char(4),+ 學院 char(8),+ 班級 char(8),+ 籍貫 char(5); s.close(); c.close(); System.out.println(*歡迎使用學籍管理系統(tǒng)*);catch(E*ception e) /該表已存在 System.out.println(*歡迎使用學籍管理系統(tǒng)*); public void zhujiemian() /定義jiemian()的方法,創(chuàng)建主功能的圖形界面 Container c=getContentPane(); /設置主功能界面的按鈕的大小和坐標位置c.setLayout

52、(null);utton b1=new utton(顯示已有學生信息);b1.setBounds(10,10,160,30);utton b2=new utton(添加新的學生信息);b2.setBounds(10,45,160,30);utton b3=new utton(修改已有學生信息);b3.setBounds(10,80,160,30);utton b4=new utton(刪除已有學生信息);b4.setBounds(10,115,160,30);utton b5=new utton(關于學籍管理系統(tǒng)); b5.setBounds(10,150,160,30);utton b6=n

53、ew utton(退出學籍管理系統(tǒng)); b6.setBounds(10,185,163,30);J_ActionListener1 a1=new J_ActionListener1(); / 實例化各個按鈕監(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.addActionL

54、istener(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.e*it(0); /該按鈕點擊時,退出學籍管理系統(tǒng) );c.add(b1); /將按鈕逐個添加到面板里c.add(b2);c.add(b3);c.add(b4);c.add(b5);c.add(b6);public void denglumenu() denglu.setDefaultCloseOperat

溫馨提示

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

評論

0/150

提交評論