版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、java程序设计系专 业班 级08级嵌入式系统实验班学 号 26号姓 名 赵黎明题 目 学生成绩管理系统任课教师 彭洁 一、课程设计要求:1、用到书上(课本或实验册)上的至少三个实例;2、用到至少两种布局和至少四种组件;3、用到对话框;4、用到对数据库的查询、删除、添加和修改;5、最好用到输入输出流;6、具有一定的实际意义。二、用到的实例及实际意义:2.1 程序所用到的实例:1、java2使用教程第10章例题10.12 p282;2、java2使用教程第11章例题11.8 p323;3、java2使用教程第15章所有例题均有使用作参考 p391-411;4、在其他参考书和网上也有用到相关程序和
2、代码,并有所参考和借鉴。2.2程序的实际意义: 本学生成绩管理系统具有对学生成绩进行管理的功能。并于数据库相连接,能够对学生的成绩、姓名、出生日期进行查询、添加和删除等,简捷方便,容易使用。三、程序代码及运行效果:3.1.1 主类代码:/*主类代码*/import javax.swing.*;import java.awt.*;import java.awt.event.*;class mypanel extends jpanel image img=toolkit.getdefaulttoolkit().getimage("c:/a.jpg"); public void
3、paint(graphics g) g.drawimage(img,0,0,this); public class mainform extends jframe implements actionlistener jmenu msystem=new jmenu("系统"); jmenuitem mexit=new jmenuitem("退出"); jmenu moperate=new jmenu("数据操作"); jmenuitem madd=new jmenuitem("添加"); jmenuitem mdel
4、=new jmenuitem("删除"); jmenuitem mmodify=new jmenuitem("修改"); jmenu mquery=new jmenu("查询"); jmenuitem mname=new jmenuitem("按姓名查询"); jmenuitem mscore=new jmenuitem("按成绩查询"); jmenu mhelp=new jmenu("帮助"); jmenuitem mabout=new jmenuitem("软件
5、信息"); jmenubar mbar=new jmenubar(); mainform() super("学生成绩管理系统"); setsize(875,583); msystem.add(mexit); moperate.add(madd); moperate.add(mdel); moperate.add(mmodify); mquery.add(mname); mquery.add(mscore); mhelp.add(mabout); mbar.add(msystem); mbar.add(moperate); mbar.add(mquery); mba
6、r.add(mhelp); setjmenubar(mbar); mexit.addactionlistener(this); madd.addactionlistener(this); mdel.addactionlistener(this); mmodify.addactionlistener(this); mname.addactionlistener(this); mscore.addactionlistener(this); mabout.addactionlistener(this); setcontentpane(new mypanel(); setvisible(true);
7、public void actionperformed(actionevent ae) if(ae.getsource()=mexit) system.exit(0); else if(ae.getsource()=mabout) joptionpane.showmessagedialog(this,"学生成绩管理系统nn应用科学学院nn2011年4月","软件信息",joptionpane.information_message); else if(ae.getsource()=madd) new addform().setvisible(true);
8、 else if(ae.getsource()=mdel) new deleteform().setvisible(true); else if(ae.getsource()=mmodify) new modifyform().setvisible(true); else if(ae.getsource()=mname) new namequeryform().setvisible(true); else if(ae.getsource()=mscore) new scorequeryform().setvisible(true); public static void main(string
9、 args) new mainform(); 3.1.2 运行效果:3.2.1 修改数据:/*修改数据*/import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class modifyform extends jframe implements actionlistener jlabel labname=new jlabel("姓名:"); jlabel labdate=new jlabel("出生日期:"); jlabel labs
10、core=new jlabel("成绩:"); jtextfield txtname=new jtextfield(20); jtextfield txtdate=new jtextfield(18); jtextfield txtscore=new jtextfield(20); jbutton btnmodify=new jbutton("修改"); jbutton btncancel=new jbutton("取消"); jbutton btnquery=new jbutton("查询"); jpanel p
11、an=new jpanel(); jpanel pan1=new jpanel(); jpanel pan2=new jpanel(); jpanel pan3=new jpanel(); jpanel pan4=new jpanel(); connection con; statement sql; resultset rs; modifyform() super("修改数据"); setsize(400,300); pan1.add(labname); pan1.add(txtname); pan2.add(labdate); pan2.add(txtdate); pa
12、n3.add(labscore); pan3.add(txtscore); pan4.add(btnquery); pan4.add(btnmodify); pan4.add(btncancel); pan.setlayout(new gridlayout(3,1); pan.add(pan1); pan.add(pan2); pan.add(pan3); getcontentpane().add(pan,"center"); getcontentpane().add(pan4,"south"); btnquery.addactionlistener(t
13、his); btnmodify.addactionlistener(this); btncancel.addactionlistener(this); btnmodify.setenabled(false); txtdate.seteditable(false); txtscore.seteditable(false); setvisible(true); txtname.requestfocus(); public void actionperformed(actionevent ae) if(ae.getsource()=btncancel) dispose(); else if(ae.g
14、etsource()=btnquery) try class.forname("sun.jdbc.odbc.jdbcodbcdriver"); catch(classnotfoundexception e) trycon=drivermanager.getconnection("jdbc:odbc:sun","gxy","123"); sql=con.createstatement(); rs=sql.executequery("select * from 成绩表 where 姓名='"
15、+txtname.gettext()+"'"); if(rs.next() txtname.settext(rs.getstring("姓名"); txtscore.settext(new integer(rs.getint("成绩").tostring(); txtdate.settext(rs.getdate("出生日期").tostring(); btnmodify.setenabled(true); txtdate.seteditable(true); txtscore.seteditable(tr
16、ue); else system.out.println("不存在该记录! "); btnmodify.setenabled(false); txtname.settext(""); txtscore.settext(""); txtdate.settext(""); txtdate.seteditable(false); txtscore.seteditable(false); catch(sqlexception e) else if(ae.getsource()=btnmodify) try system.o
17、ut.println("update 成绩表 set 出生日期='"+txtdate.gettext()+"',成绩="+txtscore.gettext()+" where 姓名='"+txtname.gettext()+"'"); sql.executeupdate("update 成绩表 set 出生日期='"+txtdate.gettext()+"',成绩="+txtscore.gettext()+" wher
18、e 姓名='"+txtname.gettext()+"'"); system.out.println("记录修改完毕!"); btnmodify.setenabled(false); txtname.settext(""); txtscore.settext(""); txtdate.settext(""); txtdate.seteditable(false); txtscore.seteditable(false); con.close(); catch(sqlex
19、ception e) public static void main(string args) new modifyform(); 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 actionlistenerjlabel labname=new jlabel("姓名:"); jlabel labdate=
20、new jlabel("出生日期:"); jlabel labscore=new jlabel("成绩:"); jtextfield txtname=new jtextfield(20); jtextfield txtdate=new jtextfield(18); jtextfield txtscore=new jtextfield(20); jbutton btndelete=new jbutton("删除"); jbutton btncancel=new jbutton("取消"); jbutton btnq
21、uery=new jbutton("查询"); jpanel pan=new jpanel(); jpanel pan1=new jpanel(); jpanel pan2=new jpanel(); jpanel pan3=new jpanel(); jpanel pan4=new jpanel(); connection con; statement sql; resultset rs; deleteform() super("删除数据"); setsize(400,300); pan1.add(labname); pan1.add(txtname)
22、; pan2.add(labdate); pan2.add(txtdate); 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"); getcontentpane().add(pan4,"
23、south"); btnquery.addactionlistener(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)
24、if(ae.getsource()=btncancel) dispose(); else if(ae.getsource()=btnquery)/实现查询功能 try class.forname("sun.jdbc.odbc.jdbcodbcdriver"); catch(classnotfoundexception e) trycon=drivermanager.getconnection("jdbc:odbc:sun","gxy","123"); sql=con.createstatement(); rs=sq
25、l.executequery("select * from 成绩表 where 姓名='"+txtname.gettext()+"'"); if(rs.next() txtname.settext(rs.getstring("姓名"); txtscore.settext(new integer(rs.getint("成绩").tostring(); txtdate.settext(rs.getdate("出生日期").tostring(); btndelete.setenable
26、d(true);/使删除按钮功能实现 txtdate.seteditable(true); txtscore.seteditable(true); else system.out.println("不存在该记录!"); btndelete.setenabled(false); txtname.settext(""); txtscore.settext(""); txtdate.settext(""); txtdate.seteditable(false); txtscore.seteditable(false);
27、catch(sqlexception e) else if(ae.getsource()=btndelete)/实现删除功能 try system.out.println("update 成绩表 set 出生日期='"+txtdate.gettext()+"',成绩="+txtscore.gettext()+" where 姓名='"+txtname.gettext()+"'"); sql.executeupdate("delete from 成绩表 where 姓名=
28、39;"+txtname.gettext()+"'"); system.out.println("记录删除完毕!"); btndelete.setenabled(false); txtname.settext(""); txtscore.settext(""); txtdate.settext(""); txtdate.seteditable(false); txtscore.seteditable(false); con.close(); catch(sqlexception
29、 e) public static void main(string args) new deleteform(); 3.3.2 运行效果:3.4.1 添加数据:/*添加数据*/import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class addform extends jframe implements actionlistenerjlabel labname=new jlabel("姓名:"); jlabel labdate=new jlabel
30、("出生日期:"); jlabel labscore=new jlabel("成绩:"); jtextfield txtname=new jtextfield(20); jtextfield txtdate=new jtextfield(18); jtextfield txtscore=new jtextfield(20); jbutton btnadd=new jbutton("添加"); jbutton btncancel=new jbutton("取消"); jpanel pan=new jpanel();
31、jpanel pan1=new jpanel(); jpanel pan2=new jpanel(); jpanel pan3=new jpanel(); jpanel pan4=new jpanel(); connection con; statement sql; resultset rs; addform() super("添加数据"); setsize(400,300); pan1.add(labname); pan1.add(txtname); pan2.add(labdate); pan2.add(txtdate); pan3.add(labscore); pa
32、n3.add(txtscore); pan4.add(btnadd); pan4.add(btncancel); pan.setlayout(new gridlayout(3,1); pan.add(pan1); pan.add(pan2); pan.add(pan3); getcontentpane().add(pan,"center"); getcontentpane().add(pan4,"south"); btnadd.addactionlistener(this); btncancel.addactionlistener(this); btna
33、dd.setenabled(true); txtdate.seteditable(true); txtscore.seteditable(true); setvisible(true); txtname.requestfocus(); public void actionperformed(actionevent ae) string recode,insert1,出生日期,姓名; int 成绩; if(ae.getsource()=btncancel) this.dispose(); else if(ae.getsource()=btnadd) try class.forname("
34、;sun.jdbc.odbc.jdbcodbcdriver"); catch(classnotfoundexception e) trycon=drivermanager.getconnection("jdbc:odbc:sun","gxy","123"); sql=con.createstatement(); 姓名=txtname.gettext(); 出生日期=txtdate.gettext(); 成绩=integer.parseint(txtscore.gettext(); recode="("+&
35、quot;'"+姓名+"'"+","+"'"+出生日期+""+"',"+成绩+")" insert1="insert into 成绩表 values "+recode; sql.executeupdate(insert1); system.out.println("记录添加完毕!"); btnadd.setenabled(false); txtname.settext("")
36、; txtscore.settext(""); txtdate.settext(""); con.close(); catch(sqlexception e) public static void main(string args) new addform(); 3.4.2 运行效果:3.5.1 按姓名查询数据:/*按姓名查询数据*/import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;public class namequeryform exte
37、nds jframe implements actionlistener jlabel labname=new jlabel("姓名:"); jlabel labdate=new jlabel("出生日期:"); jlabel labscore=new jlabel("成绩:"); jtextfield txtname=new jtextfield(20); jtextfield txtdate=new jtextfield(18); jtextfield txtscore=new jtextfield(20); jbutton bt
38、ncancel=new jbutton("取消"); jbutton btnquery=new jbutton("查询"); jpanel pan=new jpanel(); jpanel pan1=new jpanel(); jpanel pan2=new jpanel(); jpanel pan3=new jpanel(); jpanel pan4=new jpanel(); connection con; statement sql; resultset rs; namequeryform() super("按姓名查询"); s
39、etsize(400,300); pan1.add(labname); pan1.add(txtname); pan2.add(labdate); pan2.add(txtdate); pan3.add(labscore); pan3.add(txtscore); pan4.add(btnquery); pan4.add(btncancel); pan.setlayout(new gridlayout(3,1); pan.add(pan1); pan.add(pan2); pan.add(pan3); getcontentpane().add(pan,"center");
40、getcontentpane().add(pan4,"south"); btnquery.addactionlistener(this); btncancel.addactionlistener(this); txtdate.seteditable(false); txtscore.seteditable(false); setvisible(true); txtname.requestfocus(); public void actionperformed(actionevent ae) if(ae.getsource()=btncancel) dispose(); el
41、se if(ae.getsource()=btnquery) try class.forname("sun.jdbc.odbc.jdbcodbcdriver"); catch(classnotfoundexception e) trycon=drivermanager.getconnection("jdbc:odbc:sun","gxy","123"); sql=con.createstatement(); rs=sql.executequery("select * from 成绩表 where 姓名=&
42、#39;"+txtname.gettext()+"'"); if(rs.next() txtname.settext(rs.getstring("姓名"); txtscore.settext(new integer(rs.getint("成绩").tostring(); txtdate.settext(rs.getdate("出生日期").tostring(); else system.out.println("不存在该记录! "); txtname.settext("
43、;"); txtscore.settext(""); txtdate.settext(""); txtname.requestfocus(); catch(sqlexception e) public static void main(string args) new namequeryform(); 3.5.2 运行效果:3.6.1 按成绩查询数据:/*按成绩查询数据*/import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.sql.*;import
44、 javax.swing.table.defaulttablemodel;import javax.swing.table.jtableheader;public class scorequeryform extends jframe implements actionlistener jlabel labscore=new jlabel("请输入成绩:"); jtextfield txtscore=new jtextfield(10); jbutton btnquery=new jbutton("查询"); jpanel pan1=new jpanel
45、(); jpanel pan2=new jpanel(); string str="姓名","出生日期","成绩" object data=new object103; jtable table=new jtable(data,str); jtableheader head=table.gettableheader(); jscrollpane jsp=new jscrollpane(table);/滚动 connection con; statement sql; resultset rs; scorequeryform() sup
46、er("按成绩查询"); setsize(400,300); pan1.add(labscore); pan1.add(txtscore); pan1.add(btnquery);/以上3条在第一个面板加入内容 getcontentpane().add(pan1,"north");/把面板1放到窗口顶部 pan2.setlayout(new borderlayout(); pan2.add(head,"north");/将表头放在面板2的顶部 pan2.add(jsp,"center");/表格放在pan2中间 getcontentpane().add(pan2,"center&qu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高一物理暑假作业《力学》专题含答案
- 2024年学校备课组工作总结
- 2024年景观工程设计合同
- 5G-V2X通讯技术路侧单元RSU验收详细指南
- 农村地区小学教师职业倦怠的归因与对策探究-以榆林市Y学校为例
- FP设计应用教程 答案 3
- 202版出租房租赁协议范本合同二篇
- 2026年全国临床执业医师考试第三单元点睛提分卷二
- 广告学:理论、方法与实务(3版)- 课件 第7-13章-广告设计与制作 -国际广告
- 2026年高二生物下学期期中考试试卷及答案(三)
- 2026年4月河北保定市中考一模英语试卷
- 宜黄县2026年第一批机关事业单位公开招聘编外工作人员【28人】农业笔试参考题库及答案解析
- 医院评先评优工作制度
- (2025年)【单招真题】河南高职单招往年职业测试真题(附答案)
- 初中地理教师个人发展三年规划
- 2025年兵团事业单位考试题目及答案
- 2026年材料力学性能与微观结构的关系
- 《电力市场概论》期末考试复习题
- 2025年中国商用具身智能白皮书
- 归纳玉器在中国古代文化中的审美意义和文化内涵 美术鉴赏论文
- DB3401∕T 267-2022 水稻沼液施肥技术规程
评论
0/150
提交评论