版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、java程序筱计系08级嵌入式系统实验班26号w1学生成绩管理系统专业班级学号姓名题目任课教师一、课程设计要求:1、用到书上(课木或实验册)上的至少三个实例;2、用到至少两种布局和至少四种组件;3、用到对话框;4、用到对数据库的查询、删除、添加和修改;5、最好用到输入输出流;6、具有一定的实际意义。二、用到的实例及实际意义:2.1程序所用到的实例:1、«java2使用教程第10章例题10. 12p282;2、«java2使用教程第11章例题11.8p323;3、«java2使用教程第15章所冇例题均冇使用作参考p391-411;4、在其他参考书和网上也冇用到相关程
2、序和代码,并冇所参考和借鉴。22程序的实际意义:木学生成绩管理系统具有对学牛成绩进行管理的功能。并于数据库相连接,能够对 学生的成绩、姓名、出生l1期进行查询、添加和删除等,简捷方便,容易使用。三、程序代码及运行效果:3.1.1主类代码:/*主类代码*/import javax. swing *;import java, awt*;import java. awt. event*;class mypanel extends jpanel image img二toolkit. getdefaulttoolkit (). getlmagec'cr/a. jpg"); public
3、 void paint(graphics g)g. drawlmage (img, 0, 0, this);public class mainform extends jframe implements actionlistenerjmenu msystem=new jmenu (,z系统“);jmenuitem mexit=new jmenuitem(z,退出“);jmenu moperate=new jmenu c数据操作");jmenuitem madd=new jmenuitem(,z添加);jmenuitem mdel=new jmenuitem(,?删除“);jmenui
4、tem mmodify=new jmenuitem(?,修改”);jmenu mquery=new jmenu ("查询“);jmenuitem mname=new jmenuitem(,z按姓名查询“);jmenuitem mscore二new jmenuitem(按成绩查询");jmenu mhelp=new jmenu c帮助”);jmenuitem mabout=new jmenuitemc'软件信息“);jmenubar inbar=new jmenubar ();mainformosuper r学生成绩管理系统);setsize (875, 583);m
5、system.add(mexit);moperate. add (m?dd);moperate. add(mdel);moperate. add (nimodify);mquery. add(mname);mquery. add(mscore);mhelp add(mabout);mbar add(msystem);mbar add(moperate);mbar add(mquery);mbar add(nihelp);setjmenubar (mbar);mexit.addact ionli stener (this);madd. addactionlistener (this);mde1
6、addactionlistener (this);mmodify. addactionlistener (this);mname. addactionlistener (this);mscore. addactionlistener(this);mabout. addactionlistener(this); setcontentpane(new mypanel();setvisible(true);public void actionperformed(actionevent ae)if (ae. getsource()mexit)system, exit (0);else if (ae&l
7、t; getsource () mabout)joptionpane. showmessagedialog(this,"学生成绩管理系统口!1 m用科学 学院nn2011 年 4 月,软件信息,jopt ionpane. informat i onj'less age);else if (ae. getsource() =inadd)new addform() setvisible(true);else if(ae.getsource()=mdel)new deleteformo. setvisible (true);else if(ae> getsource()=mm
8、odify)new modifyformo. setvisible(true);else if (ae. getsource() niname)new namequeryform()< setvisible(true);else if (ae. getsource0=mscore)new scorequeryformo. setvisible(true);public static void main(string args) new mainformo ;ii3. 1.2运行效果:3.2.1修改数据:/*修改数据*/import javax. swing. *;import java.
9、awt.*;import java. awt event. *;import javasql*;public class modifyform extends jframe implements actionlistener rijlabel labname二new jlabel ("姓名:“);j label labdate=new jlabel 出生日期:“);jlabel labscore二new jlabel (成绩:”);jtextfield txtname=new jtextfield(20);jtextfield txtdate=new jtextfield(18);j
10、textfield txtscore=new jtextfield(20);jbutton btnmodify=new jbutton(z,修改“);jbutton btncancel=new jbutton("取消");jbutton btnquery=new jbutton(“查询“);jpanel pan二new jpanel();jpanel panl二new jpanel();jpanel pan2=new jpanel();jpanel pan3=new jpanel();jpanel pan4=new jpanel();cormection con;state
11、ment sql ;resultset rs;modifyformo super ("修改数据");setsize(400, 300);panl. add(labname);panl. add(txtname);pan2. add(labdate);pan2 add(txtdate);pan3. add(labscore);pan3. add (txtscore);pan4 add(btnquery);pan4. add(btnmodi fy);pan4 add(btncancel);pan. setlayout(new gridlayout (3,1); pan. add
12、(panl);pan. add (pan2);pan. add (pan3);getconlentpane() add(pan, "center"); getcontentpane(). add(pan4, south"); btnquery. addactionlistener(this);btnmodify. addactionlistener(this); btncancel. addactionlistener (this); btnmodify. setenabled(false); txtdate. seteditable(false); lxtsco
13、re. seteditable(false); setvisible(true); txtname. requestfocus ();public void actionperformed(actionevent ae)if (ae. getsource()=btncancel) dispose(); else if (ae. getsource o=btnquery) tryclass. forncimecsun. jdbe. odbc jdbcodbcdriver,z);catch(classnotfoundexception c)try con=dri vermanager. getco
14、nnection': odbc: s123); sql二con. createstatement ();rs=sql. executequery (select * from 成绩表 where 姓名=,/z+txtname. gettext()+"' ”);if (rs. next () txtname. settext (rs. getstring (,z姓名");txtscore. settext (new integer (rs< getlnt (成绩") tostringo);txtdate. settext (rs. getdat
15、e("出生日期") tostringo);blnmodify setenabled(true);txtdate. seteditable(true);txtscore. seteditable (true);jelse system, out. println(z/不存在该记录! ”);btnmodify setenabled(false);txtname. settext("");txtscore. settext ();txtdate. settext ("");txtdate. seteditable(false);txtsco
16、re seteditable(false);catch (sqlexception e) else if (ae getsource()=btnmodi fy) try system, out. printin(z,update 成绩表 set 出牛fl期二'"+txtdate. gettext (),成绩=,+txtscore. gettext () + where 姓名 二'"+txtname. gettext()+" “);sql. executeupdate("update 成绩表 set 出生日期 二'”+txtdate
17、. gettext () +',成绩=,+txtscore. gettext () +" where 姓名 二',+txtname. gettext () +"'");system, out. print in ("记录修改完毕! ”);btnmodify. setenabled (false);txtname settext("“); txtscore. settextc");txtdate. settext(");txtdate. seteditable(false); txtscore. sct
18、edi table (false); con. close ();catch(sqlexception e) public static void main(string args) new modifyformo ;3. 2.2运行效果:3.3.1删除数据:/*删除数据*/import javax. swing. *;import java, awt*;import java. awt. event*;import java, sql*;public class deleteform extends jframe implements actionlistener jjlabel labna
19、me=new jlabel (z/姓名:”);jlabel labdate=new jlabel(,zlb生日期;jlabel labscore=new jlabel c成绩:”);jtextfield txtname=new jtextfield(20);jtextfield txtdate=new jtextfield(18);jtextfield txtscore=new jtextfield(20);jbutton btndelete=new jbuttonc删除“);jbutton btncancel=new jbutton ("取消“);jbutton btnquery=
20、new jbutton ("杏询”);jpanel pan二new jpanel();jpanel panl=new jpanel();jpanel pan2=new jpanel();jpanel pan3=new jpanel();jpanel pan4=new jpanel();connection con;statement sql;resultset rs;deleteformosuper r删除数据); setsize(400, 300);pan1 add(labname);pan1 add(txtname);pan2. add(labdate);pan2 add(txt
21、date);pan3 add(labscore);pan3 add (txtscore);pan4 add(btnquery);pan4 add(btndelete);pan4 add(btncancel);pan. setlayout (new gridlayout (3, 1);pan.add (pan1);pan. add (pan2);pan. add (pan3);getcontentpane(). add(pan, "center"); getcontentpaneo. add (pan4, "south"); btnquery addact
22、ionlistener(this); btndelete. addactionlistener (this);btncancel. addactionlistener (this);btndelete. setenabled (false) ;/取消删除按钮的功能 txtdate. seteditable(false);txtscore seteditable(false);setvisible(true);txtname. requestfocus();public void actionperformed(actionevent ae)if (ae. getsource () btncan
23、cel)dispose();else if (ae. getsource()btnquery) /实现杳询功能tryclass. forname(z,sun. jdbc. odbc. jdbcodbcdriverz,);catch(classnotfoundexception e) trycon=drivermanager. getconnection("jdbc:odbc:sun",123);sql=con createstatement ();rs=sql. executequery ('"select * from 成绩表 where 姓 名 =
24、39;"+txtname. gettext ()+"' ”);if (rs. next ()txtname. settext (rs. getstringc姓名");txtscore.settext (new integer(rs. getlnt(“ 成 绩 ) tostringo);txtdate. settext (rs. getdate("出生日期) tostringo); btndelete. setenabled (true) ;/使删除按钮功能实现 txtdate seteditable(true);txtscore setedita
25、ble(true);elsesystem, out. printlnc不存在该记录! “);btndelete. setenabled (false);txtname settext (");txtscore. settext("");txtdate. settext(");txtdate. seteditable(false);txtscore seteditable(false);catch(sqlexception e)trysystem, out. print in ("'update 成绩表 set 出 生日期 ='&
26、quot;+txtdate. gettext ()+"', 成 绩 ="+txtscore. gettext ()+" where 姓 名 二',+txtname. gettext () +"'");sql. executeupdate("'delete from 成绩表 where 姓名 二',+txtname. gettext () +"'");system, out. printin("记录删除完毕! ”);btndelete. setenabled(
27、false);txtname. settext("");txtscore. settext("");txtdate. settext("");txtdate. seteditable(false);txtscore. seteditable(false);con. close ();catch(sqlexception e) public static void main(string args) new deleteformo ;3.3.2运行效果:3.4.1添加数据:/*添加数据*/import javax. swing. *;i
28、mport java.awt.*;import java. awt event. *;import javasql*;public class addform extends jframe implements actionlistener rijlabel labname二new jlabel (,z姓名:“);j label labdate=new jlabel 出生日期:“);jlabel labscore二new jlabel (成绩:”);jtextfield txtname=new jtextfield(20);jtextfield txtdate=new jtextfield(1
29、8);jtextfield txtscore=new jtextfield(20);jbutton btnadd=new jbutton (,z添加“);jbutton btncancel=new jbutton("取消");jpanel pan=new jpancl();jpanel panl二new jpanel();jpanel pan2=new jpanel();jpanel pan3=new jpanel();jpanel pan4=new jpanel();connection con;statement sql;resultset rs;addform ()i
30、tsuper (z,添加数据");setsize(400,300);panl. add(labname);panl. add(txtname);pan2 add(labdate);pan2. add(txtdate);pan3 add(labscore);pan3. add (txtscore);pand. add(btnadd);pan4 add(btncancel);pan. setlayout(new gridlayout (3,1); pan. add (panl);pan. add (pan2);pan. add (pan3);getcontentpane(). add(p
31、an, "center"); getcontentpanc() add(pan4, "south"); blnadd addactionlistener(this);btncanccl.addactionlistencr (this);btnadd setenabled(true);txtdate. seteditable(true);txtscore seteditable(true);setvisible(true);txtnamc. requestfocus();public void actionperfomed(actionevent ae)s
32、tring recode, insertl,出生日期,姓名;int成绩;if(ae. getsource()=btncancel)this. dispose ();else if(ae. getsource()=btnadd)tryclass. fornamesm. jdbc. odbc. jdbcodbcdriver'o ; catch (classnotfoundexception c) try con=drivermanager. getconnection: odbc: sun,z,,zgxy/z, "123");sql二con. crcatestatemc
33、nt();姓名=txtnajne. gettext ();出生日期二txtdate. gettext ();成绩=1 nteger. parseint(txtscore. gettext ();recode=(+' +姓名+ +,+ +出生日期+', +成绩+);insertl二"insert into 成绩表 values,+recode;sql. executeupdate (insert1);system, out. printin ("记录添加完毕! “);btnadd setenabled(false);txtname. settext();txt
34、score. settext (/zz);txtdate. settext (,z);con. closeo ;catch(sqlexception e) public static void main(string args)new addform ();3. 4.2运行效果:3.5.1按姓名查询数据:/*按姓名查询数据*/import javax. swing. *;import javaawt*;impor t java. awt. eve nt.*;import java.sql.*;public class namequeryform extends jframe imp1ement
35、s actionlistenet j label 1 abnamc=new j label (/z 姓名:“);jlabel labdate二new jlabel("出生日期:");jlabel labscore=new jlabel (z,成绩:”);jtextfielcl txtname二new jtextfield(20);jtextfield txtdate=new jtextfield(18);jtextfield txtscore二new jtextfield(20);jbutton btncancel=new jbuttonc取消“);jbutton btnq
36、uery二new jbutton (查 询");jpanel pan二new jpanel();jpanel panl=new jpanel();jpanel pan2=new jpanel ();jpanel pan3=new jpanel();jpanel pan4二new jpanel();connection con;statement sql;resultset rs;namequeryform ()super (,z按姓名查询");setsize (400, 300);panl. add(labname);panl. add(txtname);pan2. add
37、(labdate);pan2. add(txtdate);pan3. add(labscore);pan3. add(txtscore);pan4. add(btnquery);pan4. add(btncancel);pan. setlayout(new gridlayout(3,1);pan. add(panl);pan. add (pan2);pan. add (pan3);getcontentpane(). add(pan, "center"); getcontentpaneo. add (pand, "south"); btnquery. ad
38、dactionlistener(this); btncanccl.addactionlistencr(this); txtdate seteditable(false); txtscore. seteditabl e(false);setvisible(true);txtname. requestfocus();public void actionperformed(actionevent ae) if (ae. getsource () btncancel) dispose(); else if(ac. getsource ()=btnqucry) tryclass. fornd/necsu
39、n. jdbc odbc. jdbcodbcdriver,z) ;catch(classnotfoundexcepti on e) try con=drivermanager. getconnection: odbc: sunz/, "gxy", 123); sql=con crcatestatemcnt();rs=sql. executequery (z,select * from 成绩表 where 姓名二'"+tx tn ame. get tex t () +"' “);if (rs. next() txtname. settcxt
40、 (rs. getstringc姓名"); txtscor o. settext (new in tegcr (rs get i nt ("丿戍绩"). tostringo);txtdate. settext (rs. getdate(z,出生日期").tostringo);jelsesystem, out. printin(不存在该记录! “); txtname. settext ("”);txtscore. settext("");txtdate.settext(); txtname. requestfocus();ca
41、tch (sqlexception e) public static void main(string args) new namequeryformo ;3.5.2运行效果:3.6.1按成绩查询数据:/*按成绩查询数据*/import javax. swing. *;import javaawt*;impor t java. awt. eve nt.*;import java.sql.*;import javax. swing, table. defaulttablemodel;import javax. swing, table. jtableheader;public class sco
42、roqueryform extends jframe implements actionlistoner jlabel l abscore二new jlabel c请输入成绩:");jtextfielcl txtscore=new jtextfield(lo);jbutton btnquery二new jbuttonc杳询”);jpanel panl=new jpanel ();jpanel pan2二new jpanel ();string str=f姓名","出生日期,成绩";object data二new object103;滚动/以上3条在第一个
43、面板加入内容/把面板1放到窗口顶部jtable table=new jtable(data, str); jtableheader head二tabic gettableheadcr(); jscrollpane jsp二new jscrollpane(table); connection con;statement sql;resultset rs;scorequeryform()super (/z按成绩查询);setsize(400, 300);panl. add (labscore);panl. add (txtscore);panl. add(btnquery);getcontentpane() add(panl, "north"); pan2. setlayout(new borderlayout();pan2. add (head, "north") ;/将表头放在血板2的顶部pan2. add (jsp, "center") ;/表格放在pan2中间getcontentpane(). add (pan2, "center") ;/把面板2整体加入到主窗口中btnquery. addactionlistener
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 湖北省十堰市东风第五中学2025-2026学年七年级上学期10月月考数学试卷(含答案)
- 2025-2026学年广东省揭阳市普宁市九年级(上)期末数学试卷(含答案)
- 微生物考试题及答案
- 2022公司员工年度工作总结(5篇)
- 七年级道德与法治(上册)期中试卷及参考答案
- 班务工作总结(20篇)
- 让生活更美好多彩的作文
- 复合钢结构技术发展要点
- 单位工程验收技术方法
- 机械制图试题
- 河南省2025年普通高等学校对口招收中等职业学校毕业生考试语文试题 答案
- 冬季道路施工应对措施
- 云南省昆明市官渡区2024-2025学年九年级上学期期末学业质量监测英语试题(含答案)
- 企业员工培训分层方案
- 体检中心新员工培训教材
- 卫生院综合楼施工组织设计
- 淮安市2022-2023学年七年级上学期期末历史试题【带答案】
- 脑动脉供血不足的护理查房
- 《中医药健康知识讲座》课件
- 中国地级市及各省份-可编辑标色地图
- 急性消化道出血的急诊处理
评论
0/150
提交评论