《java程序設計》學生管理系統(tǒng)報告.doc_第1頁
《java程序設計》學生管理系統(tǒng)報告.doc_第2頁
《java程序設計》學生管理系統(tǒng)報告.doc_第3頁
《java程序設計》學生管理系統(tǒng)報告.doc_第4頁
《java程序設計》學生管理系統(tǒng)報告.doc_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

精品文檔 好文檔 java程序設計結課報告課程名稱 java程序設計 設計題目 學生信息管理系統(tǒng) 專業(yè)班級 信科101班 學 號 09 學生姓名 xx 教 師 彭 潔 信息工程系精品文檔 好文檔目 錄目 錄ii第1章 系統(tǒng)簡介31.1 系統(tǒng)功能31.2 系統(tǒng)引用例子3第2章 表的設計42.1 系統(tǒng)數(shù)據(jù)庫表結構4第3章 連接數(shù)據(jù)庫的實現(xiàn)53.1 sql server數(shù)據(jù)庫連接的關鍵代碼5第4章 系統(tǒng)詳細設計64.1系統(tǒng)登錄模塊設計64.2 系統(tǒng)主界面詳細設計94.3 學生信息增刪改模塊設計104.4 學生信息查詢模塊設計124.5 注冊子管理員模塊設計15答辯記錄20成績考核表20精品文檔 好文檔學生信息管理系統(tǒng)第1章 系統(tǒng)簡介1.1 系統(tǒng)功能本系統(tǒng)主要功能:1) 通過數(shù)據(jù)校驗如果數(shù)據(jù)校驗成功,顯示主界面;2)登入后查詢所有學生信息;3)窗體實現(xiàn)對學生信息的增加、刪除、修改;4)模糊查詢,根據(jù)姓名或者一個字查詢;5)實現(xiàn)子管理員的注冊,并且寫入注冊信息到記事本,并實現(xiàn)可以用新注冊的管理賬號登入系統(tǒng)主界面1.2 系統(tǒng)引用例子課本p275頁 15.5和課本p386頁 21.6第2章 表的設計2.1 系統(tǒng)數(shù)據(jù)庫表結構將系統(tǒng)數(shù)據(jù)庫表結構用表的形式畫出,如:字段名字段類型長度主/外鍵字段值約束對應中文名snoint10pnot null學生編號snamevarchar20not null學生名字ssexvarchar 1not null學生性別表2.1 用戶表(jbxx)sageint2not null學生年齡字段名字段類型長度主/外鍵字段值約束對應中文名snoint10pnot null學生編號jnamevarchar20not null家長名字jtelint 10not null家庭電話表2.2 家庭信息表(jtxx)注冊子管理員的記事本1111.txt內信息如下:yyyy#yyyylinlin#linlinadmin1#1111admin2#2222admin3#3333admin4#4444opop#opopuuuu#uuuubbbb#bbbbtttt#tttt第3章 連接數(shù)據(jù)庫的實現(xiàn)3.1 sql server數(shù)據(jù)庫連接的關鍵代碼public class dbutil connection con = null;string name = linqun;string passname = linqun;string ul1 = jdbc:oracle:thin::1521:orcl;public connection getconn() try class.forname(oracle.jdbc.driver.oracledriver);system.out.println(數(shù)據(jù)庫驅動加載成功);con = drivermanager.getconnection(ul1, name, passname);system.out.println(數(shù)據(jù)庫連接成功); catch (exception e) system.out.println(e);return con;public void dbclose(connection conn, statement sta, resultset rs) try if (rs != null)rs.close();if (conn != null)conn.close();if (sta != null)sta.close(); catch (exception e) e.printstacktrace();finallysystem.out.println(數(shù)據(jù)庫釋放!);第4章 系統(tǒng)詳細設計4.1 系統(tǒng)登錄模塊設計4.1.1、運行效果圖圖 4.1 登錄主界面效果圖4.1.2、主要代碼public class login extends jdialog static preparedstatement sql;private static final long serialversionuid = 1l;private jlabel l_id = new jlabel(登陸賬戶, jlabel.center);private jlabel l_pw = new jlabel(登陸密碼, jlabel.center);private jtextfield t_id = new jtextfield(10);private jpasswordfield t_pw = new jpasswordfield(10);private jbutton btnlogin;private jbutton btnadd;private jbutton btnclose;int num = 3;public login() super();dimension screensize = toolkit.getdefaulttoolkit().getscreensize();this.setlocation(screensize.width - 300) / 2,(screensize.height - 200) / 2);this.setresizable(false);getcontentpane().setbackground(new color(225, 225, 225);getcontentpane().setlayout(null);initialize();protected void initialize() settitle(系統(tǒng)登錄);l_id.setbounds(48, 43, 53, 25);t_id.setbounds(110, 43, 150, 25);l_pw.setbounds(48, 93, 53, 25);t_pw.setbounds(110, 93, 150, 25);getcontentpane().add(l_id);getcontentpane().add(l_pw);getcontentpane().add(t_id);getcontentpane().add(t_pw);btnlogin = new jbutton();btnlogin.settext(登 錄);btnlogin.setbounds(20, 142, 85, 28);btnlogin.setbackground(new color(244, 243, 239);btnlogin.addactionlistener(new actionlistener() public void actionperformed(actionevent e) addbtnloginactionlistener(););getcontentpane().add(btnlogin);btnadd = new jbutton();btnadd.settext(注冊);btnadd.setbounds(105, 142, 85, 28);btnadd.addactionlistener(new actionlistener() public void actionperformed(actionevent e) addnew zc = new addnew();setvisible(false);zc.setvisible(true););getcontentpane().add(btnadd);btnclose = new jbutton();btnclose.settext(關 閉);btnclose.setbounds(190, 142, 85, 28);btnclose.addactionlistener(new actionlistener() public void actionperformed(actionevent e) dispose();system.exit(-1););getcontentpane().add(btnclose);private void addbtnloginactionlistener() string id = t_id.gettext();string password = new string(t_pw.getpassword();if (id.equals() joptionpane.showmessagedialog(this, 帳號不可為空, 提示,joptionpane.warning_message);return; else if (password.equals() joptionpane.showmessagedialog(this, 密碼不可為空, 提示,joptionpane.warning_message);return; else tools t = new tools();boolean success = false; / todo:數(shù)據(jù)校驗success = t.eqes(id, password);if (success) / 如果數(shù)據(jù)校驗成功 顯示主界面joptionpane.showmessagedialog(this, 成功登錄, 提示,joptionpane.information_message);new mainview();this.dispose(); else -num;if (num = 0) joptionpane.showmessagedialog(this, 用戶名或者密碼錯誤!您沒有機會了);system.exit(0); else joptionpane.showmessagedialog(this, 用戶名或者密碼錯誤!您還有 + num+ 次機會);public dimension getpreferredsize() return new dimension(320, 170);public void show() toolkit tk = toolkit.getdefaulttoolkit();dimension screen = tk.getscreensize();dimension d = getsize();this.setlocation(screen.width - d.width) / 2,(screen.height - d.height) / 2);/ 輸入密碼后回車相當于點擊了登錄按鈕getrootpane().setdefaultbutton(btnlogin);t_pw.requestfocus();setdefaultcloseoperation(dispose_on_close);setsize(300, 220);super.show();public static void main(string args) dbutil util = new dbutil();util.getconn();login loginframe = new login();loginframe.setvisible(true);4.2 系統(tǒng)主界面詳細設計4.2.1、運行效果圖圖 4.2 登錄后系統(tǒng)界面效果圖4.2.2、主要代碼public mainview() super();settitle(所有學生信息);setbounds(350, 150, 700, 400);setdefaultcloseoperation(jframe.exit_on_close);setvisible(true);final jscrollpane scrollpane = new jscrollpane();con = db.getconn();vector tablevaluev, columnnamev;/ 存放列名columnnamev = new vector();columnnamev.add(學號);columnnamev.add(名字);columnnamev.add(性別);columnnamev.add(年齡);tablevaluev = new vector();scrollpane.setviewportview(table);final jpanel panel = new jpanel();getcontentpane().add(panel, borderlayout.south);panel.add(new jlabel(編號:);atextfield = new jtextfield(, 5);panel.add(atextfield);panel.add(new jlabel(姓名:);btextfield = new jtextfield(, 5);panel.add(btextfield);panel.add(new jlabel(性別:);ctextfield = new jtextfield(, 5);panel.add(ctextfield);panel.add(new jlabel(年齡:);dtextfield = new jtextfield(, 5);panel.add(dtextfield);4.3 學生信息增刪改模塊設計4.3.1、增加信息(121,白娘子,m,22)后運行效果圖如下:圖 4.3 增加一個記錄效果圖4.3.2、主要代碼final jbutton addbutton = new jbutton(添加);addbutton.addactionlistener(new actionlistener() public void actionperformed(actionevent e) userdao add = new userdaoimpl();user u = new user();u.setsno(integer.parseint(atextfield.gettext();u.setsname(btextfield.gettext();u.setssex(ctextfield.gettext();u.setsage(integer.parseint(dtextfield.gettext();add.adduser(u);setvisible(false);new mainview(););panel.add(addbutton);4.3.3、刪除信息編號為120的學生信息后結果如下:圖 4.4 刪除一個記錄效果圖4.3.4、主要代碼:final jbutton delbutton = new jbutton(刪除);delbutton.addactionlistener(new actionlistener() public void actionperformed(actionevent e) userdao del = new userdaoimpl();user ud = new user();int selectedrow = table.getselectedrow();/ 獲得被選中行的索引if (selectedrow != -1)/ 判斷是否存在被選中行del.deleuser(integer.parseint(atextfield.gettext();setvisible(false);tablemodel.removerow(selectedrow););panel.add(delbutton);4.3.5、修改信息(105,關美眉,f,41)為(105,關大俠,m,30)后運行效果圖如下:圖 4.5 修改一個記錄效果圖4.3.6、主要代碼:panel.add(searchbutton);final jbutton updbutton = new jbutton(修改);updbutton.addactionlistener(new actionlistener() public void actionperformed(actionevent e) userdao update = new userdaoimpl();user upe = new user();atextfield.seteditable(false);int selectedrow = table.getselectedrow();/ 獲得被選中行的索引if (selectedrow != -1) / 判斷是否存在被選中行upe.setsno(integer.parseint(atextfield.gettext();upe.setsname(btextfield.gettext();upe.setssex(ctextfield.gettext();upe.setsage(integer.parseint(dtextfield.gettext();update.updateuser(upe);setvisible(false);new mainview(););panel.add(updbutton);4.4 學生信息查詢模塊設計4.4.1、運行效果圖圖 4.6 查詢記錄集效果圖查詢姓趙的人信息:圖 4.7 查詢結果圖查詢名字帶“山”的人信息:圖 4.8 查詢結果圖4.4.2、主要代碼:public search() settitle(根據(jù)姓名查詢學生信息);setlayout(new borderlayout();setdefaultcloseoperation(jframe.exit_on_close);validate();setbounds(350, 150, 650, 400);final jpanel pane = new jpanel();jl=new jlabel(輸入姓或者名查詢);textfield = new jtextfield(, 5);jb1 = new jbutton(查詢);jb2 = new jbutton(返回);pane.add(jl);pane.add(textfield);pane.add(jb1);pane.add(jb2);getcontentpane().add(pane, borderlayout.north);jb1.addactionlistener(this);jb2.addactionlistener(this);setvisible(true);public void actionperformed(actionevent e) if (e.getactioncommand().equals(查詢) jscrollpane jsp = new jscrollpane();vector tablevaluev,columnnamev;columnnamev = new vector();columnnamev.add(學號);columnnamev.add(名字);columnnamev.add(性別);columnnamev.add(年齡);tablevaluev = new vector();userdao user = new userdaoimpl();user u = user.searchbyname(textfield.gettext();vector rowv = new vector();rowv.add(u.getsno();rowv.add(u.getsname();rowv.add(u.getssex();rowv.add(u.getsage();tablevaluev.add(rowv);tablemodel= new defaulttablemodel(tablevaluev, columnnamev);table = new jtable(tablemodel);jsp = new jscrollpane(table);jsp.setviewportview(table);getcontentpane().add(jsp, borderlayout.center);setvisible(true);if (e.getactioncommand().equals(返回) new mainview();4.5 注冊子管理員模塊設計4.5.1、運行效果圖圖 4.9 注冊子管理員效果圖4.5.2、主要代碼:public addnew() setdefaultcloseoperation(exit_on_close);load();this.setvisible(true);dimension screensize = toolkit.getdefaulttoolkit().getscreensize();this.setlocation(screensize.width - 300) / 2,(screensize.height - 200) / 2);this.setresizable(false);this.settitle(注冊子管理員界面);this.setvisible(true);this.addwindowlistener(new windowadapter() public void windowclosing(windowevent e) system.exit(0););public void load() pane = (jpanel) getcontentpane();pane.setlayout(null);setsize(new dimension(410, 300);settitle(管理員登入界面);t1.setbounds(70, 50, 100, 30);t2.setbounds(70, 80, 100, 30);t3.setbounds(70, 110, 100, 30);t4.setbounds(250, 50, 100, 30);t5.setbounds(250, 80, 100, 30);f1.setbounds(150, 50, 100, 20);f2.setbounds(150, 80, 100, 20);f3.setbounds(150, 110, 100, 20);b1.setfont(new java.awt.font(botton, font.bold, 12);b1.setbounds(120, 140, 60, 50);b2.setfont(new java.awt.font(dialog, font.bold, 12);b2.setbounds(200, 140, 60, 50);pane.add(t1);pane.add(t2);pane.add(t3);pane.add(t4);pane.add(t5);pane.add(f1);pane.add(f2);pane.add(f3);pane.add(b1);pane.add(b2);b1.addactionlistener(this);b2.addactionlistener(this);4.5.3、當注冊名已經(jīng)存在時效果如下:圖 4.10 驗證注冊界面4.5.4、成功注冊時效果如下:(用戶名:qunqun;密碼:qunqun)圖 4.11 注冊成功界面4.5.5、主要代碼public void actionperformed(actionevent e) if (e.getactioncommand().equals(注冊) if (tools.indes(f1.gettext() & tools.indes(f2.gettext() if (tools.eqes(f1.gettext(), f2.gettext() joptionpane.showmessagedialog(this, 該用戶已被注冊,請重新輸入!);system.exit(0); else tools.adduser(f1.gettext(), f1.gettext();joptionpane.showmessagedialog(this, 你已經(jīng)成功注冊);system.exit(0);if (f1.gettext().equals() | f2.gettext().equals() joptionpane.showmessagedialog(this, 帳號或密碼長度有誤, 提示,joptionpane.warning_message);if (e.getactioncommand().equals(退出) system.exit(0);4.5.6、新注冊管理員(用戶名:qunqun;密碼:qunqun)登入效果如下:圖 4 .12 登錄界面圖 4 .13 登錄成功界面4.5.7、主要代碼:static boolean eqes(string admin, string passwd) b

溫馨提示

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

評論

0/150

提交評論